►
From YouTube: XAF Blazor Multitenant Dashboards
Description
Click Here to Subscribe: http://xaf.life/35
Websites:
https://xafmarin.com/
https://www.xafers.training/
http://xafersweekly.com/
https://www.xari.io/
Free XAF Support Hour
https://calendly.com/xari/free-xaf-support-hour
Facebook Group
http://xaf.life/4g
Free XAF/XPO (or .NET) Support Hour: https://calendly.com/xari/free-xaf-support-hour
A
So
right
here
you
see
we
are
using
the
javascript
dashboard
control
and
they
are
working
on
the
blazer
counterpart
and
I
think
that
in
the
october
or
september,
1
21.2,
I
believe,
is
released.
That
will
come
with
the
dashboard
model.
But
in
this
moment
there
isn't.
So
I
was
looking
at
this
a
ticket
where
bonte,
actually,
just
I
don't
know,
if
you
remember,
we
did
a
video
about
one
of
his
ticket
before
about
integrating
the
dev
extreme
grid
or
the
extreme
control
in
the
surface
part.
A
So
so
he's
asking
about
the
project,
the
famous
e
1344,
that
is
changing
database
and
runtime,
but
also
integrated
with
the
multi-tenant
dashboard
and
right
here
they
are
restoring
the
dashboard
in
xml.
And
if
you
see
I
believe
in
the
end
there
is
a
sample
for
entity
framework
and
so
on.
So
I
haven't
reviewed
this
ticket
in-depth.
But
that
got
me
thinking
because
we
did.
I
don't
know
if
you
remember
just
a
similar
approach
but
storing
the
dashboard
in
the
database.
A
A
So
let's
review
the
project
for
just
a
second,
so
we
have
a
service
or
custom
or
blazer
application
that
if
you
remember
this
is
not
the
more
updated
version,
because
devexpress
already
have
an
official
one.
But
this
is
was
our
first
one
where
we
were
saving
a
cookie.
But
this
is
a
in
this
case.
It
comes
really
handy
because
I
can
get
that
cookie,
that
it
was
the
database
name
to
use
it
to
set
up
my
data
source
on
the
dashboard.
A
So
I
have
my
again
my
custom
loan,
where
I
remove
the
I
fix
my
connection
stream
and
then
I
have
my
dashboard
component
exactly
the
same
as
we
had
in
the
video
about
using
dashboard
and
shaft
blazer
about
the
video
about
the
article
I
was
using
dashboard
in
blazer
and,
of
course
we
have
four
components
that
is
using
that
component
in
your
application.
So
where
things
start
getting
interesting
are
different,
so
we
create
our
own
database.
A
That's
what
stores
and
in
here
pretty
much
we
are
passing.
What
is
the
connection
stream
that
we're
going
to
use?
So
we
have
the
database
name
on
the
cookie,
and
this
could
be
any
identifier,
and
then
we
point
to
the
right
connection
string
in
the
app
setting.
So
with
that
one
and
of
course
we
already
told
that
we
went
and
created
the
dashboard
table
with
the
oid
and
so
on.
A
A
We
select
the
dashboard
that
we
need.
We
have
a
get
available
available,
dashboard
info,
so
we
know
what
are
the
dashboard
that
are
available
for
us.
We
have
the
safe
dashboard,
we're
gonna
update
the
dashboard
that
we
want
and
so
on.
So
now,
if
we
go
to
our
to
start
up
with
that's
where
we
are
adding
our
dashboard
controller
and
so
on
so
right
here
you
see
we're
instantiating
our
dashboard
storage.
A
Then
we
are
setting
that
dashboard
storage
to
our
configurator
from
there
we're
passing
the
create
data
sources
to
us-
and
this
is
also
really
nice,
because
in
here
we
are
again
selecting
what
is
the
connection
stream
that
we're
going
to
use
and
creating
the
dashboard
xp
source.
That
means
that
I
don't.
I
only
want
them
to
create
dashboard
from
the
class
inventory
part.
I
only
want
them
to
create
dashboards
for
the
contacts
and
so
on
and
we're
gonna
save
it.
So
it's
available
for
us
when
we
run
the
dashboard
so
from
there.
A
The
other
thing
that
we
need
to
do.
We
have
to
configure
the
data
connection
and
if
we
see
here,
we
do
a
similar
approach,
and
the
important
part
here
is
that
every
time
that
the
new
client,
the
new
user
logs
in
with
a
new
database,
we
are
able
to
detect
that
and
pass
the
new
connection
stream.
And
if
you
see
here
we're
doing
the
same,
we're
passing
the
key.
A
A
So
don't
go
that
route
and
the
last
thing
is
like
we
need
to
in
the
custom
parameter,
put
a
unique
parameter
down
that
way,
we're
going
to
kind
of
trick
the
system
and
when
we're
gonna,
delete
that
cache
every
time
and
that's
because
we
need
the
configure
data
connection
event
to
get
triggered
again.
So
every
time
it's
not
like,
because
as
we're
doing
a
server
application,
we
don't
want
the
risk
of
a
dashboard
being
accessing
another
database.
So
we
need
to
make
sure
that
it
has
so
with
that
one,
that's
pretty
much
it.
A
A
By
name
by
name
my
name,
so
that
is
happening
on
the
server
that
there
is
no
security
phrase.
Here
we
are
only
given
the
connection
string
name,
the
key
that
is
on
the
app
settings
and
that
is
being
taken
care
of
by
us.
So
honest,
almost
we
have
a
homemade
implementation
of
the
dashboard
module
for
saf
because
it's
a
store
in
the
dashboard
on
the
database.
It's
changing
database
and
from
time.
So
it
has
a
lot
of
flexibility.
B
A
So
if
you
see
here
again,
we
have
contacts
inventory
anything.
So
if
we
go
to
the
dashboard,
as
we
have
seen
before,
it
will
bring
that
dashboard
control
and
right
now,
let's
say
that
we
want
to
create
a
new
dashboard.
You
see
we
have
the
two
data
sources
that
we
created
on
for
the
contacts
one
for
the
inventory,
and
then
we
get
credit
one.
A
So
that's
not
the
correct
idea,
we're
gonna
select
them,
give
them
the
the
xp
data
source
that
we
want
and
we're
gonna
encode
the
link
to
which
database
they
should
point.
But
besides
that,
pretty
much
again
we're
gonna,
say
customer
and
we're
going
to
select
a
pie
and
we're
going
to
put
anything
the
siri
and
the
argument.
The
city
doesn't
matter
so
right
here
you
have
like
a
quick
dashboard
and
if
we
save
it
and
we
go
to
our
database,
we
have
a
new
dashboard
right
here.
B
A
Again
is
everything
done
from
scratch?
We're
creating
the
table
on
our
database,
then
we're
creating
already
or
data
sources.
Then
we
are
actually
invalidating
the
cache,
so
it
triggers
the
event
and
then
we
are
doing
all
the
queries
by
hand.
Update,
select,
bring
me
all
the
dashboards
I
have,
and
I
believe
that
is
a
and
is
is
feeding
inside
the
example
about
changing
that.
I
said
sometimes
so.
B
Yeah,
but
I
mean
the
the
thing
is
that
there
are
so
many
ways
to
integrate
components
in
soft
blazer
in
general.
That
is
like,
if
you
know
the
tricks,
that
is
your
oyster
you're
free
to
do
whatever
you
want.