►
From YouTube: Entity Framework: .NET Community Standup - July 22nd 2020 - Using Scaffolding with Handlebars
Description
Join members from the .NET teams for our community standup covering great community contributions for Framework, .NET Core, Languages, CLI, MSBuild, and more.
Community Links: https://www.theurlist.com/efcore-standup-2020-07-22
A
All
right,
I
believe
we
are
live
and
streaming
welcome
to
another
episode
of
the
ef
community
stand
up
before
we
kick
this
one
off.
I
just
want
to
let
you
get
to
know
the
the
team
that
we
have
with
us
today.
I'm
a
dotnet
pm
at
microsoft
and
our
guest
today
is
tony
sneed.
Tony
tell
us
a
little
bit
about
yourself.
B
Hello,
yes,
I
currently
work
as
a
software
architect
for
hilti,
a
company
that
works
in
commercial
construction
sector,
and
I've
been
doing
that
for
a
few
years.
Prior
to
that,
I
worked
as
a
consultant
for
went
elect
with
with
jeremy
back
in
the
day
before
that,
a
developmental
instructor,
you
can
see
my
t-shirt
and
generally
been
geeking
out
on.net,
since
it
first
came
out
in
like
the
early
2000s.
C
D
Yeah,
I'm
I'm
an
engineer
on
the
ef
team.
I
also
work
a
lot
on
postgres
on
everything
having
to
do
with
postgres
at
the
ef
core
level
at
the
ado.net
level
and
generally
a
lot
into
perf.
I
guess.
E
F
Hey
y'all,
I
am
smith,
I
mainly
work
in
query
all
sql.
Whatever
works
you
are
getting.
That
is
because
of
me.
A
Nice
all
right.
Well,
let's
jump
into
some
links.
We've
got
some
exciting
demos.
I
know
not
to
put
pressure
on
tony,
but
he
has
brought
us
some
scaffolding
before
I
do
that
we
have
the
community
links
now.
These
are
linked
into
our
youtube
videos
and
on
the
site.
The
first
one
I
want
to
point
out
is
this
github
repo,
and
this
is
a
interesting
concept.
It's
a
query
specification
and
the
idea
is
to
use
expressions
to
define
business
logic
independent
of
how
it's
implemented
on
the
back
end.
E
A
Awesome
all
right
working
through
to
our
next
link.
We've
got
this
one,
which
I
found
quite
interesting.
So
couchdb
is
a
nosql
database
and
what
this
repo
does
is
provides
an
ef
core
like,
and
it
is
very
ef
core
like
if
you
look
at
the
the
the
code
experiencefor.net,
so
you
can
basically
take
your
nosql
database.
Do
things
like
configure,
set
your
options
and,
of
course
apply
queries
to
that.
A
A
Going
on
to
the
next
link
cqrs
now
this
is
an
interesting
pattern.
I
get
this
question
quite
a
bit
just
about
performance
in
general,
within
the
framework
core
and
some
of
the
ideas
around
well,
what?
If
we
have
really
lightweight
data
transport
objects?
We
only
want
to
project
a
few
fields
and
we're
not
able
to
do
what
we
want
to
do
and
the
reality
is.
A
We
have
customers
who
use
different
mechanisms
for
different
aspects
of
the
application,
so
just
because
you're
using
entity
framework
core
doesn't
mean
that
you
have
to
use
it
for
everything
you
can
use
another
solution
like,
for
example,
dapper
for
some
of
your
queries
and
your
reads
and
then
go
to
entity
framework
core
for
updates.
That's
just
one
example.
Now
this
one
focuses
on
the
pattern
and
uses
entity
framework
core
across
the
board
for
it.
A
C
So
I
think
some
of
the
things
that
we've
been
doing
in
af5
and
af
core
five
that
are
perhaps
not
as
as
front
and
center
as
the
you
know,
many
too
many
and
tpt
things
involve
a
better
separation
of
what
we
do
query
and
update
time
so
that
you
can
do
different
mappings
for
queries
and
updates.
And
so
I
think
we
haven't
really
put
that
into
a
cqrs
scenario.
Yet,
but
a
lot
of
those
are
kind
of
driven
by
being
able
to
do
some
of
these
different
things
easier.
A
Nice
all
right
dollar
sign
batch.
This
is
an
interesting
post.
Odata
has
been
working
very
hard
to
add
features
to
make
it
very
usable
in
the
net
core
ecosystem
things
like
endpoint
routing
things
like
swagger
support.
This
is
just
another
extension
to
the
specification
that
allows
you
to
batch
requests
and
data,
so
the
idea
is
instead
of
making
multiple
round
trips.
D
It's
it's
amazing
to
me
personally,
from
a
person's
perspective
perspective,
how
much
batching
is
present
everywhere
at
every
single
layer
of
the
stack
and
how
vital
it
is
to
performance.
I
mean
an
ef
core
itself.
Batching
is
a
very
important
thing.
We
send
our
updates
via
via
batching.
I
know
working
in
at
the
lower
levels
of
80.
many
times.
It's
all
about
not
doing
the
extra
round
trips
and
I
think
p
less
people
are
aware
of
this
than
you
know,
then,
should
be
in
general
in
the
world.
So
I
I
love
seeing
this.
A
A
Cosmos
and
then
how
to
configure
your
connection
through
ef
core,
to
specify
the
region
in
the
typical
use
case,
you
might
have
an
application
behind
a
load
balancer,
so
you
have
west
east
coast.
So
you
want
your
west
coast
app
to
attach
to
the
local
database,
your
east
coast,
to
that
local
and
then
cosmos
db
has
automatic
failover.
So
if
something
goes
down,
it'll
automatically
fail
over
the
other
region.
A
And
then,
last
but
not
least,
well
I'll
talk
a
little
bit
about
the
big
release.
We
have
ef
core
preview,
7
for
5.0
came
out
just
yesterday.
Actually,
and
so
this
post
covers
it,
I'm
not
going
to
re-cap
the
entire
post,
there's
some
features
with
db
context,
resetting
db
context
state.
So,
basically
you
have
some
tracking
entities
and
you
want
to
set
it.
You
know
roll
back
to
initial
state.
You
can
do
that
save
points,
cosmos
etc.
A
A
We've
started
posting
our
contributors.
So
definitely
take
a
look
at
these
announcements
as
they
come
out.
This
is
a
huge
set
of
contributors
to
this
release
and
as
we
roll
through
these
weekly
updates,
we
add
to
this
list
so
that
we
have
a
snapshot
of
everyone
who
is
a
part
of
ef
core5
and
then
last,
but
certainly
not
least,
I
encourage
you
to
go
to
the
entity
framework
core
discussions.
A
A
Ideas
for
ef,
community
stand-up
demos
up
here
community
stand
up
guests
products,
general
requests,
please
go
here
and
let
us
know
who
you
would
like
to
have
spotlighted
in
the
community
tony's
here,
because
he
was
recommended
as
a
part
of
this
discussion,
and
this
is
a
great
way
for
us
to
to
bring
people
onto
the
show,
and
I
also
want
to
say
if
you
have
a
project
that
you
would
like
highlighted.
That's
related
dfcor
we'd
love
to
have
you
on
the
show,
if
you're
not
comfortable
being
on
the
show.
That's
fine,
too.
A
C
There
was
one
comment
on
the
chat
from
from
julie
about
changetracker.clear
and
I
was
trying
to
hold
myself
back,
but
but
since
she
mentioned
it,
I'm
gonna,
I'm
gonna,
say
anyway,
which
is
we
still
recommend
that
you
create
a
new
db
context
for
each
unit
of
work
and
you
throw
it
away
when
you're
done
so
the
times
when
you
need
change,
tracker.clear
should
be
pretty
limited
and
the
first
thing
you
should
ask
yourself
if
you're
using
it
is,
am
I
really
doing
the
right
thing
with
my
context:
management
like
because
normally,
if
you
need
that
it
indicates
context
management?
C
That
being
said,
lots
of
people
want
this.
There
are
cases
when
it's
hard
to.
You
know,
create
a
new
context.
We
were
talking
to
john
p
smith
about
this,
who
is
the
author
of
the
ef
core
in
action
books,
so
we've
added
the
method
as
a
pragmatic
thing,
but
I
think
the
I
think
my
my
branch
was
like
my
architecture,
gently
weeps,
or
something
because
it's
really
shouldn't
be
needed,
but
there
you
go
it's
there
anyway.
So
I've
made
my
little
my
little
rant
about
change.
A
B
Yeah
absolutely
and
yeah,
so
I
I
actually
built
this
a
couple
of
years
ago
I
checked,
I
have
a
one
of
the
links
is
a
blog
post
that
I
published
when
I
first
did
it,
and
it
was
simply
one
of
those
things
where
I
there
was
some
tooling
in
the
ef6
side.
You
know
we
were
heavy
on
the
visual
studio,
extensions
and
tooling,
and
you
could
reverse
engineer
your
entities
from
a
database.
You
could
customize
those
using
t4
templates
right.
It
was.
It
was
a
great
thing
and
then
going
to
net
core.
B
B
So
I
thought,
oh,
you
know
be
a
cool
idea
to
come
up
with
something
and-
and
so
I
just
built
a
little
little
tool
that
it's
a
nuget
package,
you
add
it
to
your
project
and
you
you
run
it
and
it
copies
some
templates
in
there
using
handlebars.
B
So
I
found
something
that
seemed
to
be
more
on
the
cross-platform
side.
Just
the
double
curly
braces.
You
stick
data
in
there
and
you've
got
a
template,
and-
and
so
I
went
ahead
and
did
that
and
then
at
some
point
I
forget
when
eric
ej
came
along
and
he
said
hey,
you
know
I'd
like
to
use
that
in
my
ef
core
power
tools
and
I
thought
oh,
what
a
great
way
to
increase
the
downloads
of
the
package.
B
You
know
so
I
said
yeah
no
problem,
and
so
I
think,
last
time
my
ticket
was
like
80
000
or
something
I
was
like.
Oh
it's
pretty
cool
and
and
then
I
and
then
I
just
kept
adding
to
it
and
one
of
the
things
I
did
was
to
come
up
with.
Well,
let's
generate
not
just
c-sharp
classes,
let's
generate
typescript
entities,
you
know
that'd
be
kind
of
cool
to
throw
in
there
and
then
different
people,
because
you
know
they're
using
this
video
to
ask
for
different
features.
B
And
then
I
I
noticed,
there's
issues
coming
up
pull
requests,
and
so
I
got
a
chance
to
it's
one
of
the
more
active
things
that
I'm
doing
in
the
open
source
space
these
days.
I've
done
a
number
of
them
over
the
years,
but
this
is
one
of
the
more
active
ones.
It's
really
cool
to
see
people
contribute
and
a
lot
of
the
contributions,
don't
necessarily
come
from
people
who
are
used
to
doing
that.
B
You
know
have
a
lot
of
experience,
contributing
to
open
source
a
lot
of
first-time
contributions,
and
the
trainer
in
me,
you
know,
is
excited
about
helping
people.
You
know
get
started
in
doing
that,
and
so
I
came
up
with
some
contributing
guidelines
and
and
I've
enjoyed
using
that
kind
of
as
a
way
to
mentor
people
in
stepping
their
toe
into
the
open
source.
A
A
E
Okay,
yeah,
we
were
really
excited
when
this
came
in.
This
was
really
the
early
days
of
ef
core
and
we
had
experimented
a
little
bit
with
templating.
I
know
at
one
point
we
prototyped
like
using
razer
to
generate
c
sharp,
but
using
c
sharp
to
generate
c
sharp
was
just
a
nightmare
yeah
because
razer's
primary
about
like
like
html,
you
know
like.
E
E
E
I
said
hey,
why
can't
I
just
plug
in
t4
as
well,
and
so
I
do
have
a
kind
of
a
sample
out
there
on
how
to
use
that
we'll
add
a
link
to
the
show
notes
or
whatever,
and
so
I
use
the
same
ones
and
then
we're
thinking
about
additional
ways
to
incorporate
that
back
into
the
framework
too,
and
these
same
extensibility
points
are
actually.
We
have
a
f
sharp
project
to
generate
f
sharp
code
and
one
for
vb.net.
So
this
it
really
sparked
a
whole
whole
new
extensibility
story.
C
I
mean
in
in
general,
one
of
the
things
that
we
we've
tried
to
do
with
ef
core,
which
wasn't
nearly
as
possible
with
ef6,
is
to
predict
to
work
on
these
extensibility
points
so
that
we
can
support
an
ecosystem
of
packages
and
and
people
can
plug
in
and
do
other
things
that
we
don't
do
on
the
team
so
and
bright,
as
just
bryce
just
pointed
out.
That
ends
up
being
useful
for
people
doing
lots
of
different
things,
whether
it's
f,
sharp
or
you
know,
vb
t4
generation
whatever.
C
So
we
definitely
encourage
you
if
you
have
places
where
you
would
like
to
extend
ef,
but
it's
not
currently
possible
to
you
know,
file
issues
or
go
to
the
discussions
that
jeremy
showed
and
let
us
know
about
those
because
yeah
we
we
were
certainly
interested
in
making
that
even
better.
A
A
I
know
that
is
a
weight
on
a
lot
of
people's
shoulders,
and
you
know,
looking
at
a
co-base,
the
size
of
vf
core,
that's
grown
over
years
can
be
very
daunting,
so
to
be
able
to
have
a
project
that
has
a
lower
buried
entry,
and
I
think
we
do
a
lot
too
to
kind
of
point
out
what
some
good
issues
are
for
first-time
contributors
and
and
everything
else,
but
to
have
projects
that
have
that
support
is
just
great
so
appreciate
that
and
then
the
last
question
and
we'll
jump
jump
back
over
is
plans
to
implement
the
hot
thing
which
is
c-sharp
source
generators.
E
C
So
we've
obviously
talked
about
source
generators.
A
lot
we've
done
some
investigations
into
things
that
we
can
do
in
ef
core.
I
don't
know
that
it's
it's
really,
it's
not
exactly
the
same
space
as
what
we
would
do
with
you
know,
templating
handlebars
and
things
like
that,
but
in
terms
of
being
able
to
use
it
to
pre-compile
parts
of
your
model.
Slash
queries,
for
example,
is
something
that
we've
been
actively
kind
of
looking
at.
We
don't
think
we're
there
to
do.
C
Obviously
nothing's
going
to
happen
in
5-0,
6-0
planning,
we'll
see
we'll
see
what
comes
there.
We
may
try
to
do
something
in
6-0
with
it,
but
it's
early
days
yet.
A
Sounds
good
all
right!
Tony,
let's
see
some
of
this
scaffolding.
B
Yeah
sounds
good.
I'm
going
to
share
my
screen
here.
Okay,
there
we
are
ignore
the
image
of
ultraman
and
go
over
to
to
the
to
the
vam.
I
have
so
I'm
doing
this
in
a
windows
vm,
and
some
of
this
will
be
specific
to
windows,
because
I'm
using
full
visual
studio
with
eric's
ef
core
power
tools,
but
a
lot
of
it
I
want
to
show
is
just
the
command
line
and
can
be
done
either
on
the
mac
or
on
windows.
It's
independent
of
the
os.
B
This
is
the
this
is
the
home
where
the
where
the
project
lives.
The
ef
core
scaffolding
with
handlebars
here
are
the
contributing
guidelines,
and
so
I
I
put
this
together.
I
just
mentioned
at
the
pull
request
process
things
you
kind
of
take
for
granted
when
you've
been
doing
this
for
a
while,
but
when
someone's
just
walking
up
to
this
new,
they
might
not,
you
know,
have
an
idea.
I
noticed
like
some
of
the
pr's.
You
know
we're
not
forked,
and
so
I
explained
this
is
how
you.
A
B
So
fun,
stuff
and
even
reba,
so
I
I
give
a
few
extra
little
tips
and
tricks
here
for
just
working
with
get
and
pull
requests,
basically,
so
that
that's
kind
of
the
little
little
thing
I
do
there
and-
and
this
has
basically
documentation
here
on
the
readme
file-
and
it
pretty
much-
shows
you
how
to
use
it
right
from
there.
B
So
that's
that's
kind
of
cool.
This
is
the
wiki
for
the
ef
core
power
tools
and
there's
a
section
on
reverse
engineering
and
I'm
a
little
bit.
You
know
close
into
the
zoom
factor
here
so,
but
if
you
scroll
down
you'll
see
you
know
he
goes
through
all
of
this
stuff
and
one
of
the
options
in
the
ef
core
power
tools
right
down
here
is
the
customized
code
using
handlebars
templates.
So
that's
what
I'm
going
to
show
you
how
to
do
today.
B
Just
briefly
mentioned
that
I
have
this
blog
post
that
I
did
in
2018
when
I
first
did
this
thing
and
kind
of
explaining
it
and
then
and
then
for
today's
stand
up.
If
you
want
to
follow
along,
there
is
a
repo
that
I
did,
and
this
is
also
in
the
url
list
that
we
have
for
the
stand-up
today.
B
So
so,
if
you
want
to
follow
along
and
here's
the
code
as
well
for
for
all
the
after
of
the
demos
that
I
do
so,
I've
got
before
and
after
great
I'm
going
to
start
off
with
a
blank
solution.
The
before
solution
here
and
I'm
going
to
go
ahead
and
simply
add
a
class
library.
I
kind
of
like
starting
things
from
scratch
here,
and
this
is
going
to
be
a.net
standard
class
library
and
I'll
just
call
it.
B
Scaffolding,
handlebars
dot
entities,
okay
and
ideally
we'd
like
to
put
our
entities
in
a.net
standard
library
right
because
that's
the
most
shareable
kind
of
project
you
can
do
so.
I
do
that
and
one
of
the
cool
things
about
the
ef
core
power
tools
is
that
they
work
on
a
net
standard
library
for
the
cli
the.net
core
scaffolding.
That's
in
the
cli.
You
have
to
involve
a
net
core
application
for
the
runtime
and
I'll.
B
Show
you
how
I'm
going
to
do
that
when
we
get
into
the
command
line
part,
but
for
the
for
the
extension,
it's
cool
that
you
can
just
go
ahead
and
and
create
a
standard
library.
So
if
you
install
the
extension,
you'll
see
that
I
have
the
extension
installed,
there's
a
couple
of
ways
to
do
the
core
power
tools.
You
can
do
the
official
build
or
you
can
do
the
daily.
B
I
think
I
went
ahead
and
did
the
daily
and
to
get
the
latest
stuff
there
and
when
you
do
that,
you
get
a
nice
efcor
power
tools,
reverse
engineer.
This
is
based
off
a
data
connection
that
you've
set
up.
I've
set
one
up
based
on
the
northwind
database
right
because
I'm
very
upset
that
that
database
is
not
as
popular
as
it
used
to
be,
and
I
want
I
want
to
keep
it
alive.
So
that's!
Basically,
we.
C
B
And
we
we've
had
the
battle
scars
to
prove
it
exactly
so
so
you
guys
so
you
choose
a
data
connection
like
that,
and
it's
going
to
load
the
schema
information
and
let
you
you
know
just
this-
is
the
stuff
that
that
eric
demo
last
time
on
the
stand
up
here
and
with
that
you
get
a
nice
thing
now,
let's
see,
if
I'm
it's
still
loading,
because
it's
the
first
time
probably
yeah
connecting
to
this
so
and
I'm
just
running
local
db
from
for
my
for
my
demos
here,
but
you
can
use
anything
on
this,
so
that'll
load
and
then
you'll
you'll
get
this.
B
This
dialog
box
and
you'll
be
able
to
select.
You
know,
you
know
scaffold
that.
Finally,
here
it
is,
I've
always
thought
about.
What
am
I
going
to
talk
about
when
I'm
waiting
for
things
to
happen?
That's
the
interesting
part.
So
this
is
it
right
here
I
can
name
my
context.
What
I
usually
like
to
do
is
stick
my
entities,
maybe
in
the
models
folder
I'll,
stick
my
context
in
a
context
folder
and
then
you
can
choose
what
to
generate
and
then.
E
B
So
that's
great,
and
so
this
is
generating
the
code
and
we're
having
a
lot
of
fun
with
that
and
then
now,
when
you
check
that
box,
what
what
the
nuget
package
is
going
to
do
is
copy
in
to
this,
or
actually
this
is
done
by
the
extension
now.
But
it's
going
to
copy
into
the
project,
these
handlebars
templates
right
and
there's
two
sets
of
them,
one
for
c
sharp
and
one
for
typescript
there
they
are
and
and
the
c
sharp
side
you
have
templates
for
there
we
go.
We
know
it
ran.
B
We
have
templates
for
the
db
context
class
right
here
and
you
have
templates
for
the
for
the
entity
types
on
the
c,
sharp
class
side.
We've
got
the
db
or
the
db
context
side.
We
have
the
db
context
itself
and
this
takes
advantage
of
a
feature
of
handlebars
called
partial
templates.
Well,
first
of
all,
before
before
I
get
to
that,
you
know
the
idea
behind
handlebars
is
you
have
a
static
template
file
and
you
can
inject
into
that
template
data
right.
B
So,
for
example,
the
namespace
that
something's
going
to
be
set
by
the
tooling
the
name
of
the
class
as
it's
iterating
over
the
the
tables
in
the
database,
whether
or
not
there
are
entity
type
errors.
I
put
that
in
there
and
then
this
little
thing
here
is
a
pointer
to
a
partial
template,
and
I
have
those
over
here.
So
I've
got
a
few
of
them
db.
Constructor,
db
imports
and
db
sets.
B
So
I
can
open
up
the
db
constructor
and
here's
my
wonderful
constructor,
so
one
of
the
things
I
might
want
to
do
is
create
a
parameter
list,
constructor
that
arguably,
should
be
in
there
to
begin
with,
but
it's
nice
that
it's
not
so
I
can
kind
of
show
you
how
we
can
make
it
right
so
I'll
just
go
ahead
and
create
a
parameter
list.
Constructor
here
like
so
save
it.
B
I've
also
got
db
imports
right
and
here
I'm
putting
in
the
model
name
space
and
you
can
you
can
take
a
look
at
the
generated
one
and
you'll
see
it's
got
a
little
bit
of
a
bug
in
there
with
the
power
tools
we've
got
to
fix
that
which
is
it's
it's
putting
in
this
model's
name
space
twice,
because
we're
both
solving
the
same
problem
so
I'll
put
a
little
issue
in
for
eric's
repo
and
we'll
correct
that
on
on
the
power
tools
side,
but
I
can
go
ahead
and
get
rid
of
that,
and
here
I've
got
db
sets
right
and
I
can
do
some
stuff.
B
If
I
want
to,
I
can
add
a
comment
or
not
make
it
virtual,
a
bunch
of
stuff
there
and
that's
kind
of
how
that
that
works,
and
you
can
also
do
some
customization
down
here
on
the
entity
types.
So
here
I'll
just
go
ahead
and
put
a
comment
in
I
can.
I
can
do
some
interesting
things
here.
For
example,
I
can
go
into
the
partials
and
I
will
maybe
take
the
constructor
and
let's
say
I
prefer
a
list
versus
a
hash
set.
I
can
change
that
here.
B
I
can
go
down
to
the
properties
here
and
you'll
see
here
all
the
template
data
is
getting
injected
here
and
notice
that
with
handlebars
there
is
a
there's,
there's
some
what
they
call
block
helpers
and
they
have.
You
can
put
logic
in
here-
some
rudimentary
logic
like
if
statements,
4h
and
things
like
that.
So
so
I've
got
this
thing
here
and
let's
say
I
want
to
change
this
from
my
collection
to
list
and
one
of
the
other
things
you
probably
want
to
do.
B
If
this
kind
of
a
scenario
and
I'll
just
do
it
here
is
you
might
want
to
derive
all
your
entities
from
a
base
class
right
or
have
it
implement
specific
interfaces
so
I'll
just
go
ahead
and
create
a
base
class
called
entity
base
and
like
that,
okay,
and-
and
so
I
want
to
now-
derive
all
the
entities
from
that.
So
I'll
go
back
to
my
templates
and
I'll
say:
let's
open
up
the
class
and
instead
of
a
comment,
let's
go
ahead
and
derive
that
from
entitybase
right.
B
Yes,
so
yeah,
so
you
you
can,
and
that's
the
interesting
part
about
that.
If
I
look
at
the
constructor
here,
you
know
you
know
I
can
do
it
in
a
in
a
where
is
it
there?
It
is
yeah.
I
can
do
here's
a
parameter
list.
Constructor
I
can
kind
of,
and
you
can
kind
of
see
it.
Here's
public!
B
You
know
here's
the
here's
the
thing,
so
I
can
stick
parameters
in
there
if
I
want
to,
and
those
can
be
static
if
I'm
injecting
something
you
know
that
that's
needed
or
there's
a
way
of
of
injecting
custom
template
data
as
well.
B
Now
now
I'm
going
to
show
you
that,
but
this
is
a
really
good
caveat,
because,
with
the
with
the
ef
core
power
tools,
you're
limited
in
terms
of
what
you
can
do
in
terms
of
extensibility,
because
we're
not
placing
in
this
an
eye
design,
time
services,
implementation
right,
which
you
kind
of
need
to
do
if
you
want
to
go
down
deeper
and
do
some
customization
so
and
and
so
that
it's
in
that
I
design
services,
I
design
time
services,
implementation
that
I'll.
I
have
extension
methods
there
that
allow
you
to
inject
custom
template
data.
B
So
yeah
good
question,
so
so
that's
that
here
I'll
just
go
ahead
and
run
this
reverse
engineer:
ef,
core
power
tools,
remember
your
settings
and
then
we'll
just
quickly
see
you
know
what
that's
going
to
kind
of
look
like.
E
C
We
had
a
question
a
question
recently
last
few
days
about
making
everything
virtual
so
that
you
can
do
change
tracking
proxies
and
and
that's
another
great
example.
You
can
just
come
in
here
and
quickly
just
make
everything
virtual
super
easy.
D
You
know
this
little
change
or
that
little
change
and
and
these
people
you
know
they
they
want
things
to
be
the
way
they
want
and
they're
right
and
it's
very
difficult
to
accommodate
them,
and
actually
templates
is
the
perfect
way
right.
You
can
just
customize
the
exact
code
that
you
want
and
I
also
have
to
say
this
is
the
first
time
I'm
seeing
handlebars
and
I'm
really
quite
impressed
with
the
simplicity,
and
you
know
the
like
the
minimalism
of
of
this
specific
template
language.
I
like
it
a
lot.
B
C
Somebody
mentioned
in
the
in
the
chat,
the
intellisense
support
for
t4
and
I
think
the
syntax
highlighting
is
another
thing
I
I
bryce
knows
more
about
this,
but
I'm
pretty
sure
there's
some
decent
syntax
highlighters
available
now,
but
back
in
the
day
when
you
were
trying
to
do
it
without
syntax
highlighting
and
connecting
up
all
your
curly
brackets,
it
was.
It
was
terrible.
B
Yeah,
it
will
exactly
so
so
I'm
going
to
show
you
another
little
interesting
feature
here
which
is
typescript
generating
typescript
entities.
B
I
think
it's
just
kind
of
cool
that
you
can
do
that
and
and
so
what
you
want
to
do
here
is
you
know
you
run
the
power
tools
again
like
so,
and
and
this
time
you
just
select
typescript
so
I'll,
go
ahead
and
select
all
these,
because
we
like
to
see
a
lot
of
them
and
then
here
the
difference
is
I'm
going
to
select
just
entities
only
right
and
because
I'm
not
going
to
be
interested
in
a
db
context,
class
in
typescript
and
then
I'll
select,
customize
and
choose
typescript
as
the
option
and
it'll
go
through
the
same
thing.
B
This
is
kind
of
a
nice
feature.
So
now
you
have
typescript
entities
and
you
wait
and
I
I
do
yeah
it's
kind
of
cool
and
I
do
them
as
interfaces.
If
you
wanted
to
change
that,
you
could
do
them
as
classes
just
by
going
into
that
the
same
mechanism-
and
here
you
could,
you
know,
change
it
to
a
class.
If
you
wanted
to
right
so
like
that
and
but
you'll
notice
that
I
I
bring
in
all
the
imports
and
it's
it's
it's
kind
of
fun,
it
all
kind
of
works.
A
B
Isn't
that
cool
exactly
and
it's
a
database
first
approach
and
for
some
places?
That's
that's
the
source
of
truth
and
and
then
you
you
get
to
where
you
want.
So
this
is.
This
is
kind
of
the
plain
vanilla
stuff
out
of
the
box,
but
you're
gonna,
you're
gonna
get
to
a
point
when
you're
gonna
want
to
go
deeper-
and
you
know
like
we
we
mentioned
earlier
and
and
to
do
that.
B
You're
gonna
need
to
go
to
the
cli
right
and
and
the
cli
is
a
global
tool
that
you
install.net
tool,
install
global
and
in
case
you're,
following
along
I'm
sort
of
in
the
instructions
kind
of
further
down
right
here.
So
I
won't
do
this
again,
because
I've
already
got
it
installed
here,
but
you
can
install
it.
You
can
update
the
global.netf
tool
and
then
and
then
we're
going
to
do
some
interesting
things.
B
B
And
I'll
just
call
it
data
so,
and
this
is
where
we're
going
to
generate
our
db
context,
we're
going
to
target
it
here.
We
have
some
options
on
the
command
line
for
doing
that,
and
and
then
what
you're
gonna
need
is
a
project
that
has
the.net
runtime
in
it
and
that
has
to
be
a.net
core
kind
of
project.
So
I
like
creating
a.net
core
class
library
and
I'll
call
this
scaffolding
handlebars
dot,
tooling,.
B
Okay
and
I'll
make
sure
that's.net
net
core
and
and
so
we'll
go
ahead
and
add
a
couple
of
packages
that
we're
going
to
need,
get
rid
of
our
class
one
there
and
here's
our
data
right.
Okay,
so
I'm
going
to
need
first
of
all
and
I'll
just
do
it
kind
of
quickly
here
a
couple
of
packages
and
in
fact
I
am
a
huge
fan
of
copy
and
paste.
So
I'm
going
to
copy
and
paste
the
name
of
the
this
thing.
I
have
loads
to
type
that
by
hand.
B
B
That's
the
resolution!
So
I'm
going
to
go
ahead
and
say,
install
package,
let's
go
ahead
and
do
that
one:
let's
go
ahead
and
expand
that
again.
So
I
make
sure
I
know
where
I'm
doing
it:
okay
and
then
then,
when
I
get
to
the
core
or
the
tooling
project,
I'm
going
to
need
to
do
that
again.
So
I'll
do
that?
B
C
It's
interesting
to
see
you
using
the
package
manager
console
here.
Obviously
you
can
install
and
you
get
packages
from
the
visual
studio,
ui
or
or
vs
code
has
a
ui
elements
to
it
as
well,
and
yes.
A
C
The
net,
when
you're
in
dot
net
core,
you
of
course
got
the
dot
net
commands
to
install
packages,
but
I
think
one
thing
that
people
miss
is
that
the
package
manager
console
is
still
there
from.net
core
and
it's
still
very
useful,
and
you
can
still
do
all
the
things
that
people
always
did
in
the
package
manager
console,
including
all
of
the
ef.
You
have
tooling
works
in
the
package
manager
console
even
if
you're
on.net
core,
so
you
don't
have
to
use
the
net
ef
command
line.
B
I
love
it
that
is
awesome
and
you
know
I'm
going
to
add
a
class
here
called
scaffolding,
design,
time
services
and
what
I'm
going
to
do
is
implement
this.
I
design
time
services.
B
Okay
and
resolve
the
the
namespace
here
there,
it
is
and
get
rid
of
the
other
usings
and
then
implement
the
interface,
and
so
I
just
like
to
call
the
services-
and
this
is
this-
is
the
secret
sauce
right,
so
if
you're
using
the
cli
you're
going
to
need
this
class
and
one
of
the
things
you're
going
to
need
it,
for
is
to
say,
I
want
to
add
my
handlebars
scaffolding
just
like
that
right,
so
I
can
get
it
to
work.
You
know
just
just
just
doing
that
and.
C
So
yeah,
so
I
design
time
services
is
that's
the
ef
core
interface
right
right,
bryce!
That's
what
that's
our
main
entry
point
into.
E
Yeah
so
anytime,
you
run
a
tool.
We
will
scan
your
startup
assembly
for
these
things,
and
this
is
the
hook
into
the
design
time
services,
and
this
is
the
primary
difference
between
the
ef
power
tools
that
we
were
using
before
and
the
command
line
interface.
The
fpower
tools,
kind
of
have
a
hard
coded
version
of
this.
So
you
can't
add
new
services,
but
when
you
run
it
from
command
line,
we
have
to
build
your
project,
which
is
a
bit
of
an
inconvenience,
but
we
do
that.
So
we
can
discover
additional
design
time
services.
B
Exactly
exactly
and
and
and
this
is
a
point
where
I
also
like
to
maybe
peel
back
the
covers
a
little
bit
and
show
actually
what's
happening
in
this
method,
and
for
that
I
have
the.
I
actually
have
this
open
already.
This
is
the
handlebars
project
from
the
repository
clone,
and
this
is
this.
This
is
this.
Is
that
method
that
we're
just
looking
at
and
the
head
add
handlebar
scaffolding
and
you
see
all
it's
doing-
is
wiring
up
different
implementations
in
the
di
system,
and
that's
that's
really
the
magic
of
this
whole
thing.
B
So,
for
example,
I
take
an
I
c-sharp
db
context
generator
and
I'm
going
to
supply
my
handlebars
version
of
that
right
and-
and
I
can
go
down
further
and
there's
other
things
I
wire
up,
the
typescripts
helper,
the
typescript,
you
know,
model
generator
and
all
kinds
of
things.
So
really
the
whole
thing
really
just
consists
of
saying
to
the
ef
core:
tooling:
hey,
don't
use
your
default
implementation
use
my
implementation
right.
D
And
I
think
this
is
sorry
I
I
just
have
to
say
this.
I
think
this
is
also
a
great
great
showcase
of
you
know
di
and
how
di
helps
us
be
more
extensible.
In
general,
I
mean
eve
at
its
heart
is
basically
a
connection
of
services
working
together
and
getting
wired
up,
and
what
you're
doing
here
is
basically
saying
instead
of
using
the
built-in
ones,
which
is
what
everybody
uses.
If
they
don't.
You
know,
install
your
thing,
you're,
just
replacing
some
services
right,
and
it's
just
awesome.
D
You
can
do
this
and
you
didn't
even
have
to
talk
to
us
right
in
order
to
make
this
happen.
I
love
this
kind
of
thing.
C
Absolutely
agree
what
should
I
say,
I
would
a
couple
couple
more
points
about
about
di,
so
this
this
dependency
injection
stuff
here
this
is
ef
cores
internal
architecture.
So
ef
has
an
internal
dependency
injection
container
and
our
service
provider
that
it
uses,
which
it
resolves
services
when
you're
doing
operations,
either
at
design
time
or
at
runtime.
We
have
it
at
runtime
as
well.
The
design
time
service
is
specific,
obviously
design
time
from
the
name.
C
This
is
separate
from
whether
or
not
you
choose
to
use
di
in
your
application
and
you
shouldn't
so
one
of
the
things
we
did
with
zf
core
is
it's
it's
it's
a
first
class
scenario
that
we
take
very
seriously
that
you
can
just
new
upper
db
context
and
do
everything
you
want
to
do
without
having
to
worry
about
di
or
learn
those
concepts
or
anything
like
you.
C
Don't
you
shouldn't
feel
forced
to
use
di
in
your
application
and
it's
sometimes
a
bit
confusing,
because
ef
has
this
internal
di
container
as
well,
and
so
it
maybe
looks
like
you
know.
You
have
to
get
involved
with
that
stuff,
but
really
this
is
for
customizing.
What's
going
on!
So
you
shouldn't
so
don't
be
afraid
by
seeing
di
here
from
a
usage
perspective,
because
it
can
be
a
bit
intimidating
but,
as
shai
said,
it
makes
the
extensibility
story
so
much
better.
B
It
does,
and-
and
so
now
I'm
gonna
actually
show
you
how
this
works
so
we're
gonna.
I
have
a
command
here
on
the
in
text
file,
because
this
is
a
really
long
one,
and
but
this
is
your.net
ef
dbcontext
scaffold
command
right
that
you're
going
to
use.
It
takes
the
connection
string.
It
takes
the
sql
server
provider.
If
you
happen
to
be
using
that
one
to
ask
you
know:
where
do
I
want
to
output
my
entity
sent
to
a
models
folder?
I
want
to
create
a
this
db
context.
B
This
little
guy
here
has
a
whole
story
behind
it
context
directory.
This
is
my
claim
to
fame.
I
contributed
to
pr
that
implemented
that
thing
and
and
I'm
really
proud
of
it
because
it
took
it-
was
actually
an
interesting
story
because
I
I
you
know
submitted
the
pr
and
then
every
few
weeks
bryce
would
come
back
and
say:
hey,
wait,
wait,
wait,
wait,
we're
changing
the
internal
apis,
you're
going
to
have
to
read,
and
so
I
think
it
was
like
about
three
months,
but
but
we're
good
now
and
ended
up
doing
that.
B
But
it
was
a
lot
of
fun
and
a
lot
of
great
chance
to
to
to
to
practice
rebase
as
I'm
going
along.
So
so
there
you
go
so
I'm
actually
what's.
One
of
the
interesting
features
of
this
thing
is
that
I'm
directing
a
relative
directory
to
go
out
of
the
tooling
project
into
the
data
project
and
to
stick
the
data
context
in
that
folder
right
and
then
the
entities
are
going
to
go
down
here
in
the
entities
folder
and
I've
got
a
force
command
in
case.
B
D
B
There
you
go
so
I'm
in
the
directory
to
the
directory.
Let's
go
ahead
and
paste
that
in
let's
hit
enter
and
and
it'll
it'll
do
its
thing.
Sometimes
it
does
take
a
little
while,
but
sometimes
it's
faster,
but
so
okay
yeah.
So
this
is
the
thing,
so
I
forgot
to
one
of
the
things
you
need
to
do.
If
you
have
a
target
project,
this
project
directory,
you
can
actually
add
a
reference
to
it.
So
I
just
forget
to
do
that.
So
let's
do
that.
E
And
that
goes
back
to
what
you
were
saying
about
net
standard
right,
like
you,
had
a
donut
center
class
library,
which
is
great,
but
you
can't
execute
done
at
standard
without
a
run
time,
so
you
need
to
pull
it
into
your.net
core
project
to
get
it
to
run.
Oh
yeah.
C
This
is
this
is
that's
something
that
bryce
mentioned
is
definitely
a
pain
point,
but
with
everything
converging
together
in
dot
net
five.
Hopefully
some
of
that
stuff
will
become
less
painful
as
we
go
forward
exactly
so.
B
Let
me
see
if
I
actually
did
do,
that
I
did
reference
that.
The
other
thing
I
forget
to
do
sometimes
is
add
a
project
reference
from
data
entities.
Let's
do
that
and
let's
see
if
it's
happy
we'll
build
it,
and
this
is
see
if
it's
still
complaining
about
that,
but
yeah,
I'm
pretty
sure
we're
good
there.
B
Let's,
let's
do
it
one
more
time,
and
so
this
force
has
to
do
with.
Of
course,
the.
B
B
So
so,
there's
that
and
and
and
and
kind
of
while
that's
going
I'll
talk
a
little
bit
about
one
of
the
you
know.
I
know
we're
running
short
on
time.
I'm
not
gonna
have
time
to
do
all
the
demos,
but
but
it's
on
the
github
repo,
but
one
I
really
did
want
to
show
is
one
of
the
features
that
got
proposed.
The
pull
request
from
the
community
was
support
for
nullable
reference
types,
so
pretty
cool
idea.
C
B
B
Exactly
so,
let's
looks
like
it
succeeded,
so
let's
go
back
to
vs
code
and
lo
and
behold
magically.
We
have
a
db
context
and
we
have
our
entities
here
as
well
and
and
the
way
the
yeah
the
way
it
works
is.
It
should
respect
the
templates
if
they're
already
present,
which
it
yeah
did
not.
But
that's
because
I
was
using
the
tools
so
so,
basically
yeah,
so
that
that
worked,
and
that
was
fun
and
we
can
go
ahead
and
customize
a
lot.
B
But
let's,
let's
go
right
into
the
nullable
reference
types
thing
and
the
way
we
do
that
is
I'm
going
to
do
both
for
the
db
context
and
the
entities
models
and
we've
got
to
do
a
couple
of
things.
We
have
to
first
of
all
upgrade
this
to
dotnet
standard
2.1
and
as
soon
as
we
do
that
we'll
be
able
to
make
it
nullable.
So
if
you
go
to
build
you
notice
null
level
is
disabled.
That's
because
we
need
to
increase
this
to
net
standard
2.1.
B
B
We
go
back
to
our
tooling
project,
we're
going
to
open
up
that
scaffolding,
design
time
services
class
and
we're
going
to
specify
an
option
here-
and
this
is
the
this-
is
where
the
kind
of
lights
up
so
I'll
go
ahead
and
do
one
of
these-
and
I
will
say,
options
lambda
expression,
dot,
and
this
is
where
you
see
all
the
features
that
I've
been
bragging
about.
So
one
of
them
is
enable
number
reference
types.
You
can
also
embed
your
templates
in
a
separate
assembly.
If
you
want
to
enable
polarization,
you
can
also
use
schema
folders.
B
So
if
you
have
schemas
in
your
database,
it
will
place
the
entities
in
different
folders
with
different
name
spaces
and
resolve
all
the
namespaces
using
aliases,
which
is
kind
of
a
cool
feature,
and
you
can
exclude
specific
tables
and
something
that
arthur
act
asked
about.
Was
this
custom
template
data
as
well,
and
I've
got
examples
of
that,
so
we're
going
to
just
enable
nullable
reference
types
like
so
and
then
we'll
go
ahead
and
run
it
again.
B
Waiting
and
while
we're
waiting,
I
can
kind
of
explain
how
it
works.
So
if
there's
a
field
or
column
in
a
table
in
the
database
which
is
nullable
and
it's
a
reference
type,
you
will
get
the
wonderful
question
mark
around
it.
So,
let's
take
a
quick
look.
So
let's
see,
if
I
think
product
has
it
so
yeah
so
like,
for
example,
yeah,
so
not
enough
product.
Let's
try
customer
yeah,
it's
a
better
one
yeah.
So
here
I've
got
a
custom.
B
Id
is
required,
so
it's
not
a
nullable
string
and
and-
and
I
use
the
nice
null
forgiving
operator
to
get
rid
of
compiler
warnings
and
then
down
here,
because
contact
name,
city
and
country
are
all
optional
in
the
database.
They're
nullable
reference
types
here.
C
So
this
is,
this
is
actually
one
of
the
reasons
why
I
was
asking
about
changing
the
constructor,
because
you
know
ef
core
is
able
to
bind
to
constructors.
So,
instead
of
doing
that,
you
could
actually
have
customer
id
id
and
company
name
in
a.
C
And
then
you
would
just
be
able
to
make
those
read-only
properties
without
the
setter
at
all,
in
which
case
you
wouldn't
need
to
do
the
equals
default.
So
this
is
one
of
the
cool
things
about
templates
that
you
know
that
there's
so
many
ways
in
ef
core
that
you
can
configure
entities
that
aren't
just
simple.
I've
got
a
class
and
a
bunch
of
get
set
properties
on
it
like
the
the
anemic
model,
as
we
used
to
call
it
right.
C
B
Exactly
and
and
that's
a
really
good
segue,
I
think
as
well
into
this
next
little
extensibility
point
I
want
to
show
which
is
handlebars
helpers,
so
you
can
go
back
to
tony.
D
If
I
say
like
two
words
about
nullability,
just
because
we're
before
you
go
on
to
the
next
thing,
yeah.
D
D
Just
have
to
jump
on
the
the
opportunity,
so
people
here
saw
that
we
had
a
string
question
mark.
This
is,
of
course,
the
c
sharp
8
nullability
feature
that
was
introduced.
Ef
core
did
come
out
in
3.0
or
3.1
3.0,
with
very
basic
support
for
this.
So
as
what
what
tony
just
scaffolded
for
you
with
the
swing
question
mark
is
actually
going
to
work,
so
he
of
course,
is
going
to
recognize
this
and
understand
that
it
should
create
a
non-required
column
in
the
database.
D
For
example,
if
you,
if
you
use
migrations,
for
example,
or
even
if
you
don't
use
migrations,
it's
going
to
know
that
this
property
doesn't
necessarily
have
to
be
populated.
So
efcor
does
recognize
this
kind
of
stuff.
However,
there's
nullability
is
not
just
about
this,
and
efcor
needs
a
lot
more
work
to
be
fully.
Let's
say:
support,
for
example,
the
apis
of
efcor
themselves,
the
apis
you
guys
use
like
ad
and
whatever
are
not
currently
annotated.
So
if
you
use
them
you're
not
going
to
get,
you
know
all
the
nice
and
cool
warnings.
D
So
I'm
just
saying
this
so
that
people
are
aware.
We
also
have
a
page
in
the
docs
that
kind
of
gives
best
practices
if
you're
like
a
nullable
kind
of
guy,
and
you
want
to
use
that
then
there's
a
docs
page
which
you
can
go
and
where
we
give
you
some
tips
and
pointers.
What
to
do
at
this
point.
But
I
I
really
really
hope
for
dotnet
six
we're
going
to
have
enough
time
to
significantly
improve
what
we
propose
and
arthur
stop
laughing.
B
Exactly
you
know,
I
got
time,
probably
for
one
more
and
I'm
just
going
to
show
you
very
quickly
and
one
of
the
reasons
I
want
to
show
you
this
one
is
because
what,
if
you
want
to
inject
custom
text
into
your
templates
right
based
on
c-sharp
code
right,
you
want
to
have
some
custom
logic
and
and
do
that
kind
of
thing.
So
what
you
can
do
is
use
a
feature
called
handlebars
helpers.
B
So
there's
support
for
that
here
and
that's
a
feature
of
handlebars,
which
is
really
good,
and
this
this
library
relies
on
handlebars.net
implementation
and
so
there's
a
and
add
handlebars
helpers
and
there's
also
block
helpers
as
well.
So
I
support
both
of
those
and
then
there's
this
feature
I'll
mention
analysis.
I
may
have
time
to
demo
it,
which
is
add
handlebars
transformers,
which
is
really
good,
and
if
you
go
back
to
the
to
the
repo
for
this
stand
up,
you'll
see
a
full.
You
know
implementation
of
that.
B
Maybe
I
can
show
you
the
after
there,
but
that's
that's
another
kind
of
kind
of
cool
thing
yeah
you
know,
and
in
fact
let
me
let
me
quickly
show
you
that
feature
in
the
after
branch,
the
transformers
which
is
not
this
one,
but
this
one,
and
so
this
is
the
after
of
the
of
the
stand-up
thing
of
the
thing
that
we're
doing
here.
B
And
so,
if
you
look
at
this
this
guy
here,
you're
going
to
see
if
I
can
just
collapse,
a
few
windows
maybe
make
that
50
or
no
75.
B
Okay,
one
of
the
interesting
things
you
might
want
to
do
with
a
transformer
I'm
going
to
skip
ahead
just
a
little
bit
just
to
talk
about
this
is
you
might
want
to
change
a
property
in
one
of
your
entities
from
one
type
to
another
right?
So
if
you,
if
you
look
at
the,
for
example,
the
employee
entity,
you're
gonna,
know
you'll
notice
in
the
other
in
the
before
it's
a
string
right.
What?
If
I
want
to
use
an
enum
like
a
country
there
right?
What?
B
If
I
want
to
change
the
type
of
that
property,
you
can
use
a
feature
here
called
add
handlebars
transformers
and
I
have
a
property
transformer.
I
also
have
ones
for
constructors
and
class
names
and
class
files
names,
and
things
like
that
and
you
can.
You
can
basically
transform
these
to
anything.
You
want
basically
so,
and
you
can
get
that
nice
little
picture.
B
So
I
wanted
to
show
that.
Let
me
show
you
this
this
one
here,
which
is
the
add
handlebar
helpers
and
the
reason
I
want
to
show
you
this.
One
too
is
I'm
going
to
show
you
also
how
to
debug
this,
which
is
really
cool.
So
you
can
set
a
breakpoint
in
here
when
the
tool
runs,
it'll
launch,
legit,
debugger
and
you
can
you
can
go
to
town
on
that
thing.
B
That
context
is
our
context
and
the
last
one
is
parameters:
okay
and
then
we'll
go
ahead
and
do
a
lambda
arrow
all
right
and
then
we'll
go
back
here
this
one
okay
and
there
I
got
my
indents
right
and
then
I'll
just
go
to
town
on
this
I
can
say
writer
hang
on
get
rid
of
that
and
put
that
there
and
now
I
can
write
anything
I
want
to
right.
So,
there's
a
write
method
that
I
can
call
and
what's
interesting
about
this
right
method
is
you
can
you
know
just
inject
arbitrary?
B
B
Okay,
but
then
I
can
also,
if
I
want
to
have
access
to
this
context
and
that's
the
interesting
part.
So
the
context
is
just
a
dictionary
and,
for
example,
I
want
the
name
of
the
class
that's
being
generated.
I
could
just
go
ahead
and
specify
give
you
that
class
item,
that
class
name
and
go
ahead
and
stick
it
in
there.
B
So
that's
that
and
let's
see
if
I
want
to
get
it
to
break,
I
will
launch
the
debugger
bryce
told
me
about
that
trick,
and-
and
now
I
can,
I
can
go
ahead
and
and
have
some
fun
there
and
then
the
other
thing
you
want
to
do,
of
course,
is
put
that
in
your
in
in
your
template
file
as
well.
So
if
you
want
to,
for
example,
I
can
go
back
to
the
class
name
here
and
I'll
just
go
ahead
and
put
my
helper.
C
A
C
Question
about
using
the
di
with
command
line.
If
you
look
at
the
stand
up
from
two
weeks
ago,
I
do
some
of
that
also
be
happy
to
show
other
things
in
another
stand
up
if
people
think
that's.
That's
interesting.
Go
go
to
the
discussion
page
that
jeremy
linkedin
make
suggestions.
B
Great
exactly
so
so
I'll
go
back
to
this
one
here,
and
is
it
this
one
yeah?
This
is
the
one!
So
it's
and
then
you
can
see
it
kind
of
makes
some
space
okay
there
it
is.
B
It
broke
at
the
debugger,
I'm
gonna
go
ahead
and
hit
f5
and,
as
it
goes
through,
you'll
be
able
to
then
it'll
break
here
the
handlebars,
and
then
you
can
do
a
quick
watch
on
the
context
and
see
what's
in
there,
all
the
metadata
that
you
have
available
and
then
the
very
the
very
last
thing
that
I'll
mention
real
quick
is
what
if
you
want
total
control
right,
and
so,
if
you
want
total
control
at
the
very
end
of
the
demos
here
and
it's
right
right
here,
you
can
extend
the
handlebars
generators
right.
B
So
I've
got
my
own
generators
in
here.
You
can
extend
that
override
some
of
the
virtual
methods
and
then
just
generate
whatever
code.
You
want
right.
So
in
this
example,
I
want
to
add
a
new
custom
metadata
custom
template
data,
indicating
whether
the
property
is
a
primary
key
or
not
yeah.
Here
we
go,
and
I
can
I
can
do
that.
So
so,
basically,
here's
the
here's,
the
quick
watch
on
the
context
and
you
can
see
all
the
data
that's
going
into
the
template
is-
is
in
here
right
all
the
properties,
etc.
A
We
are,
but
just
so
everyone
knows
what
he
was
walking
through,
for
the
demos
is
linked
to
in
the
show
notes.
It's
the
url
list
for
this
show.
So
thank
you
so
much
tony
for
taking
the
time
to
put
together
this
step-by-step
guide,
so
everyone
can
follow
along
that's
great.
A
Appreciate
it,
thank
you,
everyone
for
joining
us
on
the
the.
If
core
community
stand
up
again,
we
look
forward
to
hearing
from
you
so
that
we
can
bring
on
other
guests
to
the
show
highlight
your
projects.
Your
links
feel
free
to
reach
out.
If
you
have
a
blog
post,
that's
related
to
ef
core
that
we
don't
pick
up
we're
happy
to
receive
those
recommendations
and
shine
a
spotlight
on
that.
We
appreciate
you
all
and
until
next
time
your
ef
core
team.