►
Description
ASP.NET Community Standup - December 11, 2018
C
D
B
On
the
I'm
gonna.
E
D
B
B
D
A
D
D
A
B
B
A
E
D
D
C
D
D
D
C
D
Then
okay,
so
we
launched
stuff.
So
each
minute
call
to
point
to
when
GA
I'm,
trying
to
teach
myself
to
say
GA
instead
of
RTM,
because
we
don't
release
I
was
gonna,
say
a
different
word.
We
don't
release
anything
to
manufacturers
anymore.
We
just
like
make
things
available,
so
I'm
gonna,
say
GA
from
now.
You.
G
C
C
H
C
H
G
A
D
B
D
B
E
D
D
C
Tell
you
about
this.
First
James
James
Newton
King
has
shared
with
us
a
domain
routing
policy
sample.
So
this
is
cool.
This
is
a
to
to
feature,
and
here
is
showing
a
domain
routing
policy
so
curling
to
the
end.
Here
he
is
matching
on
canto
SOCOM,
our
friends
canto,
so
port,
80
and
star
80,
so
showing
you
know,
matching
on
multiple
domains
and
the
code
for
this
actually
is
pretty
simple.
So
is.
B
D
D
D
C
Have
to
write
a
little
bit
of
code,
but
here
he's
got
it
right
in
here
and
it's
it's
not
a
lot
of
code.
So,
okay,
this
is
cool.
This
is
from
I
believe
it's
names,
Paul,
let's
see,
Walter
I've
looked
it
up
recently
and
my
brain
does
has
a
thirty
second
memory.
I'm
gonna
call
him
Paul
today,
so
he
has
written
a
cool
EF
core
generator.
So
this
is
a
database
first
generator.
So
this
is,
and
and
I've
been
on,
threads
he's
been
working
with
Diego
and
team
on
the
EF
team.
C
Coordinating
this
so
I
asked
him
to
actually
write
up
a
blog
post
to
you,
so
that
I
could
kind
of
feature
that
as
well.
So
here
he's
he's
walking
through
that.
So
creating
a
you
know
creating
this
based
on
a
task
here.
It
is
there's
this
task
tracker
database
going
out
and
generating.
So
you
know
creating
an
API
installing
this
as
a
global
tool.
C
So
this
is
the
enemy
framework
core
generator,
and
then
this
is
hitting
its
database
and
generating
out
core
model
EF
core
model
and
then
goes
through
and
creates
the
rest
of
an
application.
And
you
know
all
the
way
down
to
at
the
end
here
we're
testing
our
endpoints,
so
this
is.
This
is
really
cool.
This
is
neat
to
see
if
you
were,
if
you
have
an
existing
database,
so
the
the
you
know
the
EF
core
generation
is
model
first,
and
this
is
a
database
first
generation
option.
C
So
pretty
neat
alright
I'm
sneaking
this
in
here.
This
is
something
that's
near
and
dear
to
my
heart.
We
announced
this
at
last
week.
It
Connect.
So
this
is
any
or
this
is
excuse
me.
This
is
dotnet
foundation
open
membership.
So
this
is
something
we're
similar
to
some
other
foundations
out
there.
Community
can
apply
to
join
the
dotnet
foundation
and
then
run
for
board
seats
and
vote
in
the
board
elections.
So
that
is
pretty
neat.
We're
gonna
have
elections
starting
in
January,
and
we
also
have
some
new
corporate
sponsors.
We've
got
pivotal
progress
and
insight.
C
Part
of
the
reason
that
I'm
telling
you
about
this
is
people
ping
me
and
said
one
of
the
things
we
just
say.
If
you
have
contributed
to
dotnet
to
a
dotnet
Foundation
project
you're
eligible
to
join,
so
people
said
how
can
I
contribute
if
I
haven't
contributed
yet
so
Shane
Boyer
has
created
this
up
for
grabs
a
global
tool.
So
there
there's
already
been.
You
know
you
can
browse
through
different
sites
and
or
different
repos,
and
we
use
this
up
for
grabs
label.
C
B
So
much
cool
like
global
tool,
stuff
happening
right
now,
like
I'm
and
the
thing
that's
fun
about
global
tools.
Is
that
once
you
get
them
installed
and
really
get
them
into
your
brain,
you'll
start
using
them
like,
and
imagining
that
they're
part
of
dotnet
itself
like
net
outdated,
is
so
helpful
that
it's
it
I
can
get
confused
that
it's
not
part
of
of
dotnet
and
I
could
feel
like
up
for
grabs
is
another
thing
that
I
would
just
use
constantly
hang
out
for
the
weekend
and
is
going
do
an
issue.
C
Alright,
this
is
a
very
quick
one.
This
is
from
Hamid
he's
just
pointing
out.
This
has
actually
been
an
issue.
That's
been
up
and
I
guess
for
a
year,
and
this
is
test
project.
Actually
it
was
broken
and
it's
working
now,
so
you
can
go
and
your
test
dotnet
test.
It
works
as
of
s
peanut
core
two
one:
five
hundred
dude.
B
D
C
B
Right
now,
if
you
go
down
a
test
at
the
top
level,
I'm
actually
getting
I
just
did
it
right
now
on
a
machine
that
does
not
have
this
and
it
says
skipping
running
tests
for
project
whatever
to
run
tests
with
donna
test.
Add
that
out
right
so
it'll
it
used
to
complain
and
try
to
run
tests.
Now
it
notices
it's
not
a
test,
and
this
little
bit
of
metadata.
It
just
gives
it
one
more
thing
to.
D
C
C
D
D
B
D
D
C
Move
on
his
gem
has
continued,
so
he's
got
a
serious
going
on
building
out
validation
controls.
So
previously
he
had
built
kind
of
a
suite
of
a
bunch
of
different
ones:
range,
validators
and
stuff,
so
here's
custom
validation
controls.
So
this
is
neat
as,
as
you
pointed
out
to
me
last
time,
Damian.
This
is
something
where
razor
pages
doesn't
have
support
for
for
validation,
kind
of
controls
or
attributes
in
here.
So
here
he's
he's.
Building
that
out
interesting.
D
And
I
think
it
was.
We
talked
about
last
time.
The
actual
form
validation
features
haven't
been
built
for
blazing
yet,
and
there
are
a
bunch
of
different
ways.
It
could
end
up
going
and
I
think
her
shammes
cawing
ahead
and
built
some
as
a
sort
of
a
prototype,
but
we
don't
really
know
what
its
gonna
look
like
in
Blasi.
Yet
we'll
know
earlier
in
the
wooden
razor
components.
C
New
you,
okay,
speaking
of
blazer
I,
have
been
keeping
an
eye
on.
Ed's
state
has
changed.
This
is
a
weekly
thing.
If
you're
really
into
blazer
he's
got
a
weekly
twitch
show
he
calls
out
a
lot
of
community
projects,
so
it's
kind
of
a
similar
style
to
you
or
stand-up,
and
then
he
goes
through
writes
a
lot
of
so
good
stuff,
one
that
one
that
he
called
out
this
past
week.
That
I
thought
is
neat
is
this
blazer
fiddle.
C
A
C
C
Yep
so
and
there's
other
ones
in
here,
there's
blazer
paint
so
neat
stuff.
Okay,
ahead
has
been
running.
This
serious
I
think
he
said,
yeah
he's
on
number
10
here.
So
this
is
a
big
big
meaty
post.
This
is
going
into
all
the
recent
stuff
that
was
announced
so
he's
rolling
up.
You
know,
connect
announcements.
What
to
expect
in
dotnet
core
ASP
note
core
3
what's
just
been
released,
so
this
is
a
lot
of
stuff
here:
videos
huge
huge
roll
up,
big
link-
blog,
yes,
yes,
good
stuff,
so
big
big
thanks
to
chef.
E
C
Yeah
really
good
stuff,
all
right
now,
I'm
just
down
to
my
three
remaining
posts
here.
This
is
the
announcement,
so
we've
got
the
dotnet
core
to
release
I'm
talking
about
you
know
to
your
compilation.
This
is
interesting.
I
hadn't
seen
this
before,
but
now
it's
like
seems
obvious
to
me
the
access
token
support
for
sequel
connection
and
then
injecting
code
prior
to
me,
and
so
Damion
you've
pointed
this
out
in
the
past
at
asp
net
or
has
support
for
stuff
like
this.
For
things
like
app
insights,
cognitive.
D
C
D
C
B
D
How
do
we
call
it?
We
have
a
name
hosting
startup
I
think
it
is,
is
what
we
call
it
and
it,
like.
You,
said
it's
a
hook
that
allows
you
in
the
a
spinet
core
layer
to
via
environment
variables,
say:
can
you
please
go
and
find
these
this
assembly
and
then
in
this
assembly?
I
want
you
to
find
there's
a
predefined
attribute,
which
we
ship
and
it'll
find
that
attribute
in
assembly.
That
attribute
contains
the
a
string
that
represents
a
method
that
you
want
to
be
called.
D
So
when
you
go
to
a
drap
service,
you
may
have
noticed
a
banner
that
shows
up
in
the
portal
that
says
that
application
insights
to
your
to
your
application,
if
it's
dotnet,
core
or
donut
framework,
and
that's
how
that
works-
I'm,
not
net
core,
it
does
all
these
moving
things
in
order
to
make
it
work.
It's
not
perfect.
It
has
some
side
effects
and
that's
why
we've
we
can't
facades
it
a
little
bit
in
vs
in
a
couple
of
versions
ago.
D
However,
this
is
actually
a
similar
approach,
but
doing
it
in
the
run
time,
and
so
injecting
code
prior
to
main
is
talking
about
like
main
as
in
program
name,
which
is
like
a
runtime
feature
which
it
scans
for
this
this
method
and
uses
that,
as
the
entry
point
to
your
application,
the
thing
that
he's
met
did
was
obviously
at
the
age
when
it
called
hosting
layer.
So,
like
a
web
host
blah
when
that
boots
up,
we
would
call
the
thing
this
is
even
earlier,
and
so
this
is
I
didn't
know.
D
D
D
D
Il
so
I
think
I,
don't
think
it
really
I,
don't
think.
That's
particularly
a
reason
to
prevent
it
but
sort
of
reliability
or
just
to
opt
out
of
something
that's
otherwise
configured
on
the
host.
Perhaps
I
don't
know
if
there
is
a
environment
variable
to
turn
off.
There
is
a
link
to
see
host
on
a
pod
for
more
information,
and
maybe
there
in
the
documentation.
Did
you
read
the
dogs,
of
course,.
D
B
D
E
C
B
A
A
C
D
D
The
addition
of
the
analyzers
that
help
you
use
those
libraries
are
more
accurately
so
that
if
you've
got
an
API
that
is
describing
itself
or
documenting
itself
our
swagger
to
do
these
things,
and
then
we
see
code
that
violates
that.
There's
an
analyzer
that
says
hey.
You
said
you
were
gonna
return
a
404
and
you
didn't
return
a
404,
oh
yeah,
well,
whatever
it
might
be,
who's.
D
Should
say
violator
yeah,
it
should
yeah,
so
that's
cool
the
introduction
of
endpoint
routing,
which
we
touched
on
before,
which
is
like
up
to
20%
faster
in
our
benchmarks
for
MVC,
which
is
great,
plus
new
features
that
we
saw
James
talking
about
the
Slugger
5
feature,
which
I
think
it's
called
something
else.
You
know
it's
called
Scott.
You
did
a
blog
post
on
it
all.
D
D
D
D
That's
right,
the
is
in
process
hosting
which
I'm
going
to
come
back
to
in
a
minute.
I
want
to
show
you
some
stuff
in
there
in
a
second,
we
improved
another
performance
improvement
in
model
valid
in
MVC.
We
improved
model
validation
by
up
to
15%
and
there's
some
more
detail
there.
We
did
a
blog
post
earlier.
D
Just
a
random
thing,
like
one
of
the
developers,
did
some
work
in
that
area
for
I
can't
remember
who
was
an
unrelated
reason
or
if
they
were
just
replying
to
some
customer
feedback,
but
they
managed
to
simplify
that
and
make
it
faster
for
certain
cases,
which
is
great
I,
think
it
was
basically
the
cases
where
things
are
like
not
invalid,
so
like
we
we
can.
We
can
detect
earlier
whether
we
need
to
even
apply
validations.
D
How
we
yeah,
as
you
always
say,
Scott,
if
you
can
avoid
doing
something
it'll
scale
better,
then
we
have
problem
details.
Support
so
again
for
AP
is.
This
is
an
RFC
that
allows
you
to
standardize
the
format
of
the
responses
you
get
when
your
API
has
an
error
and
whether
it's
a
user
error
because
they
provided
the
wrong
format
or
there
was
a
validation
error
or
a
server
error
or
logic
error.
D
There's
now
a
standard
format
for
doing
that,
so
we
have
support
for
that
in
MVC,
for
API
is
now
by
default
we
have
a
preview
of
HTTP
to
server
support
in
kestrel
itself.
We
get
HTTP
to
support
when
hosting
on
is
because
is
does
that
for
us,
but
if
you're
hosting
direct
with
kestrel
there's
now
a
preview
of
that
support,
it's
not
ready
for
edge
like
internet
edge
facing
HTTP.
D
Yet
that
is
on
the
books
for
300,
but
if
you're
doing
it
behind
the
firewall
or
you
want
to
try
that
early,
then
please
go
ahead
and
do
so.
We
updated
all
the
templates
to
use
bootstrap
for
the
spire
templates
that
were
updated
to
angular
6,
so
they
work
with
no
10.
You
know
all
good
stuff
there.
We
also
drastically
simplified
the
templates.
This
has
been
a
long-standing
argument
for
20
years
about
how
complicated
temperature.
D
Much
content
should
there
be
in
there
and
so
I
made
the
decision
to
just
let's
just
make
it
really
really
simple.
So
there's
like
a
home
page,
a
privacy
policy
page,
we
don't
even
have
the
about
page
or
the
contact
page
anymore
and
the
home
page
just
says:
welcome.
It
doesn't
have
like
boxes
in
our
carousel
and
all
that
stuff.
We
just
said
no
says,
welcome,
and
then
you
get
to
write
your
stuff
for
signaler
on
a
spinet
core.
D
We
have
a
Java
client
now,
so,
if
you're
doing
Android
development
or
Java
desktop
development,
does
anyone
do
that?
Still?
There
are
some
okay
and
you're
using
maven
or
you
just
get
it
somewhere
else.
You
can
get
a
client
for
a
signaler
now,
if
you're,
using
the
azure
signal
or
service
that
Java
client
works
just
as
well
with
that
as
well.
D
So
with
there's
some
really
cool
emerging
scenarios
with
signal
around
serverless
signal,
art
and
I
know,
some
people
on
the
stream
are
probably
laughing
because
I
said
the
word
service,
where
you
don't
actually
have
to
host
your
app.
You
can
have
an
azure
function
which
uses
HTTP
to
post
into
the
signaler
service
as
a
result
of,
say,
an
event
trigger
that
came
from
an
azure
storage
blob
thing
trigger
and
then
that
will
then
broadcast
out
to
all
your
clients
through
the
signal
or
service.
D
So
you
don't
have
an
HP
net
core
app
running
at
all
anywhere.
You
simply
have
like
an
azure
function
that
responds
to
an
event
grade
thing
that
then
sends
out
a
broadcast
to
or
your
thousands
of
customers
who
are
connected
to
the
edge
of
signal
or
service,
which
is
pretty
cool.
You
got
service
real-time
now
and
then.
Lastly,
here
we
have
calling
out
and
a
60%
up
to
60
percent
improvement
in
HTTP
client
performance
on
Linux,
which
was
a
huge
huge
improvement
in
the
lint.
B
D
B
A
D
D
D
Then
you
can
now
do
that
using
a
validation
system.
You
can
register
a
callback
that
will
validate
the
options.
You
can
even
use
data
annotations
to
validate
your
options,
so
you
can
put
like
the
required
attribute
on
your
Poco
options
class
and
then,
and
then
you
configure
the
option
system
to
do
validation
and
it
will
just
do
a
control
f
and
look
for
validation
and
see
if
it's
been
posted.
Yet
it
may
still
be
in
PRI
may
not
o
its
options.
Builder
options,
validation,
yeah,
look,
it's
live
yeah!
D
We
keep
adding
features,
hold
alright,
so
I
wanted
to
just
show
a
little
thing
that
we
haven't
spoken
about
in
terms
of
the
benefits
of
in
proc
I
know,
a
lot
of
customers
were
hanging
out
for
the
IAS
in-process
hosting,
and
you
know,
there's
a
good
blog
post
on
it
shows
you
a
diagram
but
the
differences.
But
you
know
most
folks
know
that
if
you're
hosting
an
IAS
with
a
sneer
core
today,
what
happens
is
as
a
module.
D
The
ACE
met
core
module
or
a
NCM
as
we
refer
to
it,
as
that
then
has
the
job
of
launching
dotnet
XE,
which
is
pointed
at
your
application
DLL.
So
you
get
this
hop
which
results
in
you
know
a
little
bit
more
latency
slower
throughput,
because
there's
just
more
stuff
going
on,
and
so
we
now
have
in
process
hosting
an
NC,
and
we
have
a
new
version
of
NC
m
NC
MV
and
you
can
put
both
in
the
system
at
the
same
time.
D
It's
totally
fine
and
anc
MV
supports
in
process
hosting,
so
that,
if
you're
running
on
deck
or
you
can
have,
is
or
is
Express
running
your
neck
or
a
spinnaker
application
directly
in
is
Express
XE
or
w3
p
XE
for
a
bunch
of
benefits,
the
biggest
one
being
performance
up
to
four
times
faster
throughput
on
benchmarks,
when
we
do
that,
what
I
wanted
to
show
is
what
it
does
for
developer
scenario.
So
I'm
gonna
show
my
desktop
we'll
see
if
this
works.
Alright.
F
D
Can
see
it
and
I
will
assume
that
you
guys
can't
see
it.
Sorry,
you're
gonna
have
to
just
wait
for
the
feed
to
catch
up
is
in
Scotland
John,
so
I
have
an
a
spinet
core,
2.2
application.
In
fact,
I
think
it
is
I
created
this
early
and
is
s22
perfect
all
right
and
so
by
default,
asp
net
core
two
applications
targeting
dotnet
core
2.2
2.2
applications.
Sorry
will
will
default
to
using
in
process
hosting,
and
so,
if
I
go
to
my
CS
proj
you'll
see
its
marked
as
in
process.
D
A
spoon
echo
hosting
model
is
in
process,
so
this
was
a
new
application
and
it's
targeting
that
correct.
So
this
should
be
ready
to
do
so.
If
I
launch
this
application,
I
have
is
Express
configured
at
the
top
there,
which
is
the
default,
and
it's
built.
I
haven't
built
this
one
yet
so
we're
paying
the
full
cost
for
that.
So
there's
my
application
running.
D
B
D
D
B
B
D
D
B
D
D
D
That's
okay,
the
is
so
here
we
can
see
the
a
spinet
core,
v2
module
being
loaded,
all
right,
which
makes
sense,
because
this
is
the
ILS
process
but,
more
importantly,
we
should
start
to
see
dll's
from
net
itself
being
loaded.
Okay.
So
if
I
scroll
down
this
is
all
the
I
yes
stuff.
So
far,
now
we're
seeing
all
the
a
spinet
core
DLL
is
being
loaded,
because
this
is
running
in
process.
D
Okay,
so
that's
how
you
ultimately
very
very
assuredly
verify
that
you
are
running
in
process,
because
all
the
dotnet
core
assemblies
are
being
loaded
in
process
somewhere
in
there.
My
application
is
loaded,
it's
a
W,
so
it
probably
all
the
way
down
the
bottom.
So
there
it
is
web
application,
25,
DLL
and
web
application.
25
views
DLL,
which
is
my
razor
views
now
and.
D
D
But
the
latency
for
the
first
request
was
always
quite
high.
Okay,
and
we
can
see
that
latency
down
here.
So
if
I
hit
f5,
you
can
see
it's
taking
about
10
milliseconds
for
the
home
page
to
load
right
if
I
hit
f5
I'm,
not
doing
anything,
change,
I'm,
not
changing
anything
right,
so
I'm,
just
hitting
my
thing
every
single
time
and
it's
taking
around
10
milliseconds.
If
I
go
and
rebuild
this
now
shift
f6
and
I
hit
f5
this
time
see
how
it
took
about
800
milliseconds
less
than
a
second
now
think
about
what
happened.
D
There.
I
rebuilt
the
application,
which
means
I,
got
a
new
application
DLL,
which
means
that,
on
the
next
request
is
expressed
that
XE
had
to
be
started
again
because
it's
in
proc
you
have
to
tear
down
the
whole
XE
and
it
had
to
boot.
The
CLR
boot
load
on
my
Assembly's
boot
my
application
and
then
render
the
page,
and
it
did
that
in
well
under
a
second
on
my
machine.
That
is
a
massive
improvement.
Let
me
prove
it
to
you.
D
Let
me
change
this
application
back
to
add
a
process
hosting
all
right,
so
now
I'm
doing
out
a
process
and
to
be
super
super
anal
about
it.
I'm
gonna
exit
is
Express.
Okay,
I'll
rebuild
it
again,
just
to
be
sure
I'll
control
shift
B
this
one
and
then
I'll
relaunch
it
ctrl
f5,
okay,
so
we
didn't
see
that
one,
obviously,
because
we
I
just
launched
it
and
another
network
tab
open.
So
let's
go
back
and
force
a
rebuild
okay,
so
we'll
go
back
over
here.
We'll
do!
D
D
But
some
we
like
to
mock
about.
Oh,
we
look.
We
made
it
from
three
seconds
to
a
second,
but
the
reality
is
you
know,
developers
do
that
literally
hundreds
of
times
a
day
and
so
being
able
to.
You
know,
get
it
down
so
that
I
can
make
a
code
change
if
I
build
the
vs
and
come
back.
The
process
can
be
started
and
you
can
see
the
output
in
under
a
second
is.
It
is
a
huge
win
versus
taking.
You
know
two
to
three
seconds
to
do
it
on
a
machine.
D
This
powerful
now
I'm
not
satisfied
with
that.
I
want
to
do
a
lot
better
if
I
just
make
a
razor
change.
You'll
note
that
the
the
speed
is
even
is
even
faster
today,
so
let's
go
ever
make
it
may
erase
a
change
and
we'll
say,
welcome.
This
has
now
changed.
So
a
razor
change
requires
a
recompilation
because
razor
files
are
compiled
into
c-sharp
right.
D
Well,
they'd,
you
know
they're
generate
c-sharp,
and
then
we
compiled
them
into
a
separate
assembly,
and
so,
if
I
go
and
hit
f5
now
that
one
took
one
and
a
half
seconds,
which
is
a
little
unusual.
Let's
do
it
again.
I'm
assuming
everything
good
was
just
warming
up,
will
say
again,
underwear
five
right
so
that
it's
just
Beth
what
I
expect
a
razor.
Only
change
on
this
machine
takes
about
100
to
150
milliseconds
because
of
razor
run
time
compilation.
D
So
what
we
do
is,
even
though
we
compiled
all
those
views,
those
razor
views
into
that
views
assembly
that
you
saw
in
The
Fault
in
Explorer
before
so
that
makes
startup
time
really
quick,
because
we
didn't
have
to
boot
Rossum,
we
didn't
have
to
do
any
razor
pausing.
The
views
were
there.
They
were
just
an
assembly,
we
just
ran
them,
but
after
the
application
has
started,
we
do
fire
up
Roslyn
on
a
background
thread
today,
and
then
we
monitor
those
razor
files
for
changes
and
then
we
compile
them
in
the
application.
D
Ok,
and
which
is
why
don't
you
took
130
milliseconds
if
I
change
code
that
gets
compiled
by
the
c-sharp
compiler
in
Visual,
Studio
and
I,
hit
f5.
Now
we're
going
to
see
that
two
to
two
and
a
half
second
delay
again,
because
the
entire
process
chain
had
to
be
torn
down,
it
had
to
trigger
a
read
that
one
took
six
and
a
half
seconds.
D
Just
to
have
completely
finished
the
loop
on
this
I
said
there
was
a
caveat.
So
let's
go
back
to
in
process
I'll
just
hit
that
five
I
don't
know.
If
that's
going
to
work,
is
that
going
to
make
it
better
that
seemed
far
too
quick
I?
Don't
trust
that,
let
me
rebuild
it!
Let
me
hit
f5
again
and
it
took
a
second,
so
I
think
that's
about
right.
That's
what
we
thought
right.
If
I
just
change
a
razor
file,
this
has
changed
again
and
once
more
when
I
hit
f5.
D
So
it's
doing
it
here,
which
is
good.
That's
what
we
want.
Yeah
I
took
a
second,
so
remember.
I
said
the
first
time
that
you
change
a
razor
file.
It
has
to
warm
up
and
I.
Do
it
and
this
time
with
feeling
this
one
should
take
about
a
hundred
to
130
milliseconds,
okay
in
a
spinet
core,
three
we're
removing
razor
run
time
compilation
by
default,
all
right,
we're
going
to
just
be
using
the
build
time
compilation
which
currently
is
about
800
milliseconds
on
my
machine.
D
Every
time
you
make
a
razor
file
change,
so
we're
going
from
800
from
102
150
milliseconds
to
about
800
milliseconds
with
the
current
technology.
Every
time
you
change
a
razor
file,
so
that's
obviously
worse,
okay
and
we
we
want
to
make
sure
that's
why
I
said
I'm
not
as
happy
with
this,
yet
as
I
want
to
be
because
I
know
a
neck
or
three
we're
gonna
want
to
get
that
time
back
down
again
to
as
close
to
that
as
we
possibly
can.
That's
not
you
know.
It's
not
simple.
D
We're
gonna
have
to
do
some
work
to
make
that
happen,
but
we
get
the
benefit
of
razor
components,
which
is
a
whole
new
programming
model.
Anyone
who's
done
desktop
development
on
net
using
zamel
or
wind
forms
is
looking
at
this
like
wait,
you
can
just
change
the
UI
and
go
back
and
hit
f5
and
it's
there
instantly
wow.
That's
amazing,
like
we
haven't
had
this
type
of
real-time
into
the
way.
D
Every
single
time
you
make
a
UI
change
or
an
application
change
so
Redux
and
react
and
angular,
and
they
have
all
these.
You
know
very
complicated
fancy
module
hot
reloading
systems
so
that
you
don't
have
to
recompile
the
entire
application.
Essentially,
every
time
you
make
a
change,
dotnet
doesn't
have
a
capability
like
that.
So
they're,
you
know
speaking
simply
out
of
the
box.
Today
we
do
have
edit
and
continue
which
works
under
the
debugger.
You
know
profilers
can
convicted.
D
All
they
can
do
is
it
is
right
now
in
dotnet
court
to
to
when
doing
in
process
hosting
or
if
you're
hosting,
with
Kestrel
directly,
you
can
get
very
easily
sub.
Second
sort
of
you
know,
startup
times
through
application
that
that's
sub.
Second,
from
Chrome's
point
of
view
not
from
like
me
measuring
in
the
application,
so
this
is
like
as
round
outer
loop
trip
as
you
could
possibly
get.
So
that's
pretty
good,
but
we're
gonna
work
harder
right.
D
We're
gonna,
try
and
get
that
down
so
that
we
folks
can
feel
productive
when
we
remove
runtime
compilation,
there's
a
whole
bunch
of
reasons
as
to
why
we're
removing
it
by
default.
It
will
be
available
as
a
package
in
three
go.
So
if
you
really
really
do
want
one
time,
compilation
will
be
able
to
add
it
back,
but
it
won't
be
there
by
default
and
it
simplifies
a
whole
bunch
of
things
for
us.
D
Yeah
I
did
promise
the
community
a
three
Oh
blog
post
and
I
do
plan
to
do
that
before
Christmas
and
so
the
300
blog
post.
Would
this
be
the
highlight
of
all
the
overview
of
all
the
features
that
we
plan
to
do
phrase
minute
caught
three?
Obviously,
the
team's
been
focused
on.
So
we
spoken
all
much
about
3,
oh
but
I.
It's
time
to
share
all.
B
D
B
D
B
D
B
So
I
upgraded
my
podcast
site
to
2.2
mm-hmm
and
you
know:
I
run
it
in
Azure,
so
here's
my
Azure
yep
so
I
don't
know
if
you
know
this
hopefully
you'll
be
surprised
otherwise,
you'll
be
like
oh
yeah.
We
all
know
about
that.
So
you
know
I've
got
my
app
service
over
here
and
app
service
has
gotten.
You
know,
charts
and
graphs
yay
and
then
you've
got
a
pin
sites.
Yep.
G
B
B
B
G
D
B
All
it
basically
goes
and
generates
a
dashboard
for
you
and
then
names
it
after
your
site.
So
here's
my
main
dashboard
and
then
without
and
I-
remember:
I
spent
like
an
hour
and
a
half
building
a
dashboard
before
I
built
it,
and
then
you
see
the
little
share
icon.
It's
shared
with
the
other
administrators
on
my
site,
so
you
may
have
application
insights
like
me
and
you've.
Had
it
on
your
system
for
many
months
or
a
year
go
and
push
that
star
button.
It
will
generate
this
automatically
for
you
share
it
with
your
admins.
D
F
B
D
B
B
F
D
D
Not
yeah
because,
like
the
way
that
this
works
as
I
understand,
it
is
the
application
inside
JavaScript,
which
is
injected
into
your
page,
to
do
client
analytics
hooks.
The
events
for
outgoing
HTTP
requests
from
the
browser
when
they're
on
that
page
and
if
you
have
an
extension
that
just
makes
requests
from
the
context
of
that
page.
In
order
to
do
things
like
link,
shortening
or
coupon
finding,
whatever.
B
Here's
an
ajax
call
to
this
shorten
and
the
point
I'm
making,
of
course,
with
app
insights,
which
I'm
a
huge
fan,
as
if
you
just
if
you
don't
install
it,
you
don't
get
all
these
cool
benefits
and
I
can
dig
in
and
find
out
who
this
person
was
and
where
they
were
located.
Where
the
call
happened
when
it
happened.
What
happened
nearby
it
looks
like
this
was
in
Nairobi
Wow.
D
B
D
D
B
B
F
B
D
B
And-
and
the
point
here
is
that
I
didn't
expect
that
a
script
injection
attack
would
have
shown
up
there,
but
it
makes
total
sense.
It's
one
of
those
things
with
yeah.
That
makes
sense.
Absolutely
now
is
this:
is
this
you
all
hitting
it
hitting
the
site
or
what
is
going
on
here?
It's
so
fast.
That's
a
great
dashboard
I,
just
love
poking
around
somebody
keeps
sending
a
post
message
to
my
home
page
this.
This
guy
here
keeps
hitting
me
with
it
with
a
malformed
post.
This
shows
up
every
couple
of
days.
D
D
Absolutely
should
be
setting
CSP
on
a
on
a
site
like
yours,
I
would
think
I
mean
you
feel
concerned
about
being
hacked
and
like
nefarious
use,
it's
not
it.
Basically,
you
send
headers
that
dictate
to
the
browser,
what
type
of
dynamic
content
that
your
site
is
allowed
to
execute
and
from
what
context,
and
so
you
can
say,
I
only
allow
JavaScript
that
was
downloaded
from
these
domains.
For
example,
right.
B
C
B
B
B
Here's
one
from
three
months
ago,
so
it
looks
like
lots
of
people
I've
done
this
yep
now
I've
got
four
or
five
of
these
to
pick
from
yep
here's
one
from
five
ten
years
ago.
So
how
do
you
decide
right?
I'll
have
to
go
and
basically
read
the
code
and
probably
go
with
the
one
that
looks
the
simplest
well.
B
A
A
You
can
load
up
onyx
based
deep
learning
models
directly
into
your
Caesar
locations
and
run
them,
and
so,
for
example,
let's
just
say
you
wanted
to
predict.
If
someone
was
trying
to
steal
something
and
it
gets
into
it,
gets
into
one
of
your
actions.
You
can
actually
call
direct
a
model,
just
load
it
up
like
an
asset
and
call
it
directly
in
process.
That's.
D
A
A
A
Is
a
is
a
dotnet
core
project,
and
so
you
should
be
able
to
run
it.
Of
course,
you
can
run
in
any
process
that
does
running
down
there
right
and
it
like
it
like
I
know,
AI
stuff
sounds
complicated,
but
it's
basically
just
a
different
way
of
writing
code
and
it
outputs
like
an
asset
and
that
asset
you
just
load
up
like
if
it
was
an
assembly.
Alright,.
A
A
D
A
D
You
very
much
nice.
Alright,
everybody!
There
are
a
bunch
of
questions.
I'm!
Sorry,
though
it's
an
hour,
we
kind
of
wasted
a
bunch
of
time,
but
we
I'm
happy
to
I'll,
be
here
next
week,
so
I'm
happy
to
come
on
the
show
again
next
week
and
then
we'll
break
for
the
holidays.
So
it's
good!
Perhaps
next
week
we
could
do.
We
could
just
do
a
Q&A
Q&A.
A
D
C
A
D
All
right
all
right,
thanks
everyone
for
tuning
in
today,
we
had
like
I'm,
not
even
kidding
like
I'm,
just
adding
the
numbers
from
twitch
and
you
and
YouTube
together.
This
is
the
most
people
with
head
watching
ever
like
300
people.
If
you
combine
them
together.
Sorry,
my
mom
logged
in
the
next
time.
That's
well,
that's
so
capital!
We
will
see
all
y'all
next
week.