►
Description
No description was provided for this meeting.
If this is YOUR meeting, an easy way to fix this is to add a description to your video, wherever mtngs.io found it (probably YouTube).
B
Yeah
kind
of
like
the
LifeCam
cinema,
a
little
just
dug
it
out
of
my
office
about
me:
I,
don't
have
the
webcam
on
this
laptop
is
the
one
at
the
bottom.
That
goes
up
my
nose,
so
I
don't
want
to
use
that
so
I
literally
just
grabbed
this
one,
and
because
of
the
light
behind
me
and
because
I
think
just
the
nature
of
this
camera,
it
tends
to
yeah.
A
B
B
Yes,
I'm
in
home
today,
I
have
a
cold,
so
I'm
not
infecting
everyone
at
work.
So
we
did
a
huge
release.
This
morning
we
finally
got
out
the
first
preview
for
a
2.1
which
we've
been
talking
about
for
a
while,
but
we'll
talk
a
little
bit
more
about
that
later
on
in
the
show
I
think
we
should
do
the
normal
thing
on
Scott.
You
are
here,
you
haven't
said
anything
yet
hello,
hello,
Scott
is
on
his
laptop,
so.
A
B
A
B
A
C
Well,
yeah,
so
it's
still
in
the
process,
but
basically
I'm
trying
to
change
the
backend
of
my
podcast
and
while
I
was
doing
it
I
frankly
opened
up
web
matrix
and
realized
that
my
blog,
my
podcasts,
all
of
my
podcast
sites,
are
the
same
site.
They're
all
web
matrix
based
razor
pages
using
massive,
which
is
the
micro
ORM
from
Rob
Connery
and
talking
to
a
database
that
I
don't
want
to
pay
for
running.
C
B
C
Now
get
him
got
it
hired
full
time.
Yep
Dustin
did
this
as
his
interim
project
and
now
it's
if
supported
and
a
wonderful
thing,
that's
built
in
internet.
You
notice,
there
I
say
filed
that
open
text.
I
is,
you
are
already
right.
I
literally
took
the
iis
file
from
years
ago,
popped
it
into
asp.net
core.
All
my
URLs
continued
to
work
without
I
is
to
be
clear
here.
This
is
a
a
format.
C
That's
me:
let's
hop
on
there
something
weird
you
double
clicked
in
my
text
box
there,
don't
you
go
down,
so
I've
got
a
page,
Oh
Coco
down.
There's
my
old
show,
okay,
see
where
it
says
action.
Basically,
I
wanted
to
have
my
own
yet,
which
is
how
I
do
my
stuff,
but
I
also
have
an
on
old
show,
get
which
is
the
map
between
the
old
show
ID
and
the
new
show
ID,
but
I
didn't
really
want
to
reuse
the
on
get
method.
C
I
had
to
add
a
little
bit
of
magic
at
the
end
of
it,
so
I
pass
in
handler
equals
old,
show
ID,
which
is
a
magic
razor
pages
thing.
If
somebody
calls
in
with
the
old
database
ID
I,
look
it
up
right.
There,
gooood
dot
ends
with
I
grab
it
out.
If
I
can't
find
it
I
bail,
no
harm
done
otherwise.
I
redirect
off
to
the
permanent
new
location
so
effectively
like
three
lines
of
code.
A
couple
of
copy
paste
and
an
existing
XML
and
I've
got
600
old
URLs
continue
to
work.
I'm.
B
That's
one
I
had
to
envisage
like
I,
remembered
like
when
we
first
prototype
razor
pages.
This
was
one
of
the
first
things.
I
hit
was
a
page
that
has,
for
whatever
reason,
you
know,
multiple
actions
gestures
whatever
you
want
to
call
them
that
the
user
can
perform,
and
you
want
to
just
keep
that
code
in
the
page.
It's
kind
of
the
whole
point.
It's
like
this
page.
B
A
self-contained
has
a
page
model,
it's
properly
factored,
but
there
might
be
slightly
different
entry
points
here,
whether
it's
a
post
versus
a
get
or
a
post
that
actually
does
a
delete
or
a
post
that
doesn't
move
or
whatever
it
is,
and
in
your
case
you
know,
rather
than
having
have
a
single
method,
with
a
switch
statement
or
all
that
type
of
stuff
like.
Why
doesn't
the
framework
do
that
dispatching?
B
For
me,
of
course,
I
want
that
type
of
support,
and
then
we
looked
at
the
html5
form
action
attribute
which
lets
you
have
like
an
input
element,
a
button
that
overrides
the
forms
action
for
the
form
it's
currently
in,
so
you
can
effectively
have
multiple
buttons
in
a
form
that
go
to
different
URLs,
and
we
were
inspired
by
that
and
we
built
this
custom
handler
thing,
but
you've
used
it
for
a
slightly
different
purpose,
but
it
works.
You
know
equally
as
well,
if
not
better,
for
this
is
great.
A
Yeah
yeah,
it
made
me
happy
to
see
the
the
how
well
middleware
works
here
right,
just
plugging
that
in
directly
it's
not
a
big
deal
like
I.
Remember,
I've
worked
with
this
over
the
years
and
it's
like
how
I
got
to
go
in
XML
and
I
got
it
I
mean
here
it
you've
got
your
existing
rules,
but
you
can
add
on
additional
rules
right.
The
fluent
you
know
fluent
syntax
and.
C
The
other
thing
is:
is
there
were
kind
of
the
reminder
to
all
of
us
and
developers
the
difference
between
rewrites
and
redirects,
which
is
obvious
to
maybe
old
timers
but
less
obvious
to
others.
Super
useful
thing
to
know
and
understand
the
lifecycle,
as
it
is,
a
dance
where
the
goal
is
to
get
everyone
off
to
the
canonical
URL
right.
A
Awesome
all
right
on
to
the
next
one:
yeah,
that's
very
cool,
so
this
is
from
the
piranha
CMS
folks.
So
they've
they've
got
a
new
update.
We
featured
them
a
few
times
before
it's
kind
of
a
lightweight
drop-in
dotnet,
core
ready,
CMS.
The
thing
that
they
recently
blogged
about
here
was
new
project
templates.
So
this
takes
advantage
of
the
dotnet
dotnet
new.
You
know
so
I
can
just
install
that
package
and
then
just
and
then
give
it
the
name.
So
this
is
a
nice
lightweight.
A
Exactly
so,
this
is
this
is
neat.
I've
actually
got
two
posts
here
on
this.
This
is
one
from
Troy
Hunt.
What
he's
done
has
gone
through
and
taken
his
half
a
billion
passwords
and
created
a
searchable
database
and
an
API
around
that,
and
so
the
use
here
would
be.
You
know
if
somebody's
reusing,
a
password,
you
can
maybe
tell
them
like
hey.
This
is
a
common
password.
Now,
obviously,
some
red
flags
might
go
off
and
then
you'll
remember
oh
yeah.
This
is
Troy
hunt
and
he's
done
it
the
right
way.
A
So
we
don't
just
want
to
have
a
bunch
of
passwords,
and
you
know
we
don't
want
to
share
out
this
bad
information.
So
what
he's
actually
doing
here
is
he's
using
if
we
oh,
he
does
have
also
a
password
count
next
to
it.
So
you
can
see
how
how
many
times
some
of
these
passwords
are
using,
how
common
they
are
so
he's
actually
set
up
a
searchable
API
for
it.
C
B
C
A
Okay,
so
what's
cool
here
is
in
setting
up
this
API,
it's
an
interesting
there
actually
there's
a
sink
a
on
it
Kay
anonymity,
and
this
is
the
idea
that
they're
sharing
a
portion
of
the
sha-1
hash.
So
the
idea
is
you
can
you
know,
put
in
a
password
and
from
the
front-end
it's
able
to
hash
it
send
back
just
that
hash.
So
you
can
query
for
password
usage
without
it
being
without
sending
along
your
password.
A
So
he's
he's
got
an
API
here,
information
on
how
to
use
it
and
all
that,
of
course,
someone
set
up
a
you
know
some
some
new
get
package
for
this.
So
this
this
is
pretty
neat.
This
is
a
dotnet
standard,
one
point
three
and
four
six
one
for
an
end
for
this
and
so
the
code
for
it
you
know
install
package
and
then
just
a
few
lines
of
code.
Some
ideas
here
is,
you
can
say,
like
you
know,
querying
based
on
a
password
how
many
times
it's
been
used.
A
That
kind
of
thing,
of
course
this,
since
this
is
dotnet
code,
you
need
to
you
need
to
think
about.
You
know
how
this
is
being
handled,
but
if
you
do
have
passwords,
if
you,
for
whatever
reason,
have
passwords
on
your
back-end,
this
is
something
where
you
could
look
into
and,
of
course,
there
are
times
where
a
user
does
send
a
password
to
you.
It's
just
it's.
It
was
neat
for
me
to
see
this.
How
there's
this
kind
of
thinking
through
nobody
wants
to
store
passwords?
Nobody
wants
to
to
track
passwords.
A
You
know,
use
them
as
little
as
possible,
so
that
can
and
MIT
thing
is
pretty
neat
James
Newton
King
sharing
about
Jason
net
11
dotto
release.
A
C
Look,
let
me
give
you
very
specific,
so
I
have
my
website
up
right
now,
right,
I
use
Jason
net
because
I've,
using
whatever
came
with
Windows,
am
I
using
this
wouldn't
reason
something
else
well,.
B
You're
using
no
you're
using
James's
package,
so
as
part
of
one,
we
can
talk
about
this
in
a
little
minute,
but
yeah
a
spirit
caller
does
take
a
dependency
on
Jason
net,
the
better
or
worse
and
I'll
talk
about
some
of
the
pros
and
cons
to
that
in
a
minute.
I
think
we
have
Toth
spoken
about
on
the
show
before
actually,
but
it's
way
better.
B
There
are
a
couple
of
places.
The
JSON
format
is
for
MBC
depend
on
JSON
yep.
The
project
model
also
got
dependency
model
package,
which
is
the
thing
that's
used
to
kind
of
explore
the
dependencies
of
a
project
to
find
out
what
packages
you
reference.
What
assemblies
are
available
that
uses
JSON
net
to
read
the
depth
JSON
file
that
gets
deployed
with
your
application
in
order
to
pass?
B
You
know
what
versions
of
libraries
that
your
app
was
deployed
with
and
I
think
those
are
the
two
major
places
where
it'll
end
up
in
your
your
a
spinet
core
application
sort
of
by
default.
Now,
in
an
ideal
world,
we
would
obviously
have
good
JSON
API
is
built
into
the
platform.
I,
don't
think
that's
a
controversial
thing
to
say:
I
think
you
know
we
haven't
done
in
standard
library.
B
The
whole
point
of
those
things
is
that
our
other
standard
library
is
that
you
get
all
the
useful
stuff
so
that
you
don't
have
to
bring
in
packages
and
make
decisions
about
things
like
dotnet
should
just
have
good
JSON
support.
But
we
all
know
the
long
history
of
that
over
the
past
15
years
and
Jason
net
has
appeared
as
the
clear
winner
for
one
reason
or
another.
B
That
people
maintain
there's
also
some
experimental,
Jason
pausing
functionality
that
the
dotnet
team
has
been
working
on
in
the
core
FX
Labs
repo,
which
uses
some
of
the
new
span,
a
memory
sort
of
no
allocation
patterns
for
doing
that
which
can
have
huge
benefits,
as
you
can
imagine,
first,
for
server
workloads
when
you're
dealing
with
lots
of
Jason
input
and
lots
of
JSON
output.
My
ideal
future
would
be
some
type
of
result
where
we
end
up
with
a
really
good
foundation
for
Jason
reading
and
writing
in
the
platform.
B
C
B
B
C
B
First
question:
the
the
relationship:
is
there
the
same
thing,
so
we
literally
ship
his
package.
We
depend
on
his
package,
we
don't
repackage
it,
we
don't
rename
it
or
fork
it
or
anything
like
that.
In
this
case
it
is
the
same
package
and
then
we
simply
stick
it
in
the
visual
studio
installer
we
reference
it
from
the
templates,
etc,
etc.
The
come.
B
So
if
you
pull
in
Jason
net
11
in
your
project,
you're
upgrading
it
for
everyone
in
that
project,
I
have
1101
right
and
that
in
a
normal
like
in
a
lot
of
projects,
that's
not
a
huge
problem.
Right
and
James
is
very
good
about
not
making
horrible
breaking
changes
from
release
to
release,
because
you
can
imagine
the
his
package
is
basically
the
center
of
the
universe.
B
Sudden
you
get
the
organ,
a
lot
of
ways
for
a
product
like
Visual
Studio,
which
is
built
by
literally
many
dozens
of
different
teams,
which
all
might
want
to
take
a
dependency
on
Jason.
On
that
for
different
reasons.
This
has
historically
been
an
issue
where
everyone
was
to
ship
their
own
individual
version
of
Jason
net,
because
with
whatever
reason,
they
took
a
dependency
at
some
point
in
time,
and
but
only
one
can
be
loaded.
You
know.
B
Ultimately,
dotnet
really
only
supports
one
version
of
a
given
assembler
being
loaded
at
a
time,
and
you
certainly
knew
get
only
supports
one
version
in
the
graph
any
one
time
yeah,
and
so,
if
you're
writing
code
for
Visual
Studio,
you
must
use
the
version
of
Jason
net
that
Visual
Studio
uses
in
dev,
FFXIII,
right
and
I
think
it's
version,
nine
something
yeah
yeah
and
so
you
do
have
to.
This
is
a
problem
as
your
applications
get
bigger
and
you
start
bringing
in
more
dependencies.
B
That
may
not
agree
on
what
version
of
a
common
dependency
they
need.
If
those
things
introduce
you
know
buying
the
binary
incompatible
changes,
you
can
find
yourself
a
lot
of
heartache
and
this
is
where
DLL
hell
and
all
those
type
of
things
come
from
and
it's
not
unique
to
dotnet.
You
know
it's
you
get
this
problem
in
JavaScript,
you
can
it
in
Java
you
can
get
in
C++,
but
in
net
we
have
a
somewhat
unique
behavior
around
this
very
strong
type
identity
which
is
tied
to
the
assembly,
and
so
it
can
lead
to
problems.
B
You
just
have
to
think
about
it.
So
my
point
was
in
the
future:
I
think
you
will
see
us
try
and
move
to
a
situation
where
the
default
experience
for
something
like
asp
net
core
doesn't
include
any
third-party
dependencies.
In
fact,
in
2.1,
which
we
can
talk
about
in
a
minute,
we've
made
a
quite
substantial
change:
the
default
experience
that
starts
us
along
that
road,
and
we
can
talk
about
that
after
Johnson.
Well,.
C
When
yeah,
when
we
get
off
at
the
end,
I'm
looking
at
10
lines
of
code,
that
I've
written
six
different
ways
about
HD,
basically,
it's
like
go
to
a
URL,
get
some
Jason
put
it
into
an
object.
Oh
the.
B
C
B
C
A
Right
awesome,
all
right,
let
me
wrap
up
here
so
yeah,
just
some
other
small
things
in
addition
to
the
dotnet
standard
to
support
he's
also
got
a
generic
type
converter,
Jason,
converter
of
type
T.
So
that's
kind
of
neat
there's
also
included
in
there.
I
get
there's
small
small
type
here.
Let
me
blow
that
up.
There's
a
UNIX,
date/time
converter,
there's
no
standard
for
serializing
dates
in
Jason,
so
he's
got
this
UNIX
date/time
converter,
which
is
useful
and
then
also
Jason
path,
which
is
neat
so
being
able
to
query
using
Jason
path.
So
was.
A
B
B
A
Right,
yeah
I
think
there
was
something
down
in
the
footer
here:
Jason
Tenno
released
one
had
async
stuff
all
right
there,
you
go
alright,
so
this
is
interesting.
This
is
from
Andrew
lock.
So
what
he's
talking
about
here
is
top
level
MVC
parameter
validation.
So
what
he
reviews
is
okay,
you
can
put
data
annotations,
you
can
put
required
and
you
can
put
data
types
like
an
email
address.
That's
been
supported
for
a
long
time.
In
asp
net
MVC
is
peanut
in
general.
You
can
do
an
entire
model
validations.
A
You
can
say
if
a
model
is
valid,
that's
been
supportive
for
a
while
there's
also
the
concept
of
parameter
validation,
and
that
is
where
you
would
go
through
and
you
would
say
in
a
parameter
you
could
say
required
email
address
and
that
would
apply
to
this
parameter.
However,
as
of
is
peanut
core,
oh
this
didn't
actually
work
at
that
level.
Yeah
we
didn't
blow
that
it
was
so
you
could
put
those
you
could
put
those
parameter
attributes
on
there,
but
they
would
always
be
validated
so
now
at
Freya's
peanut
core
to
one
that
is
supported.
B
And
so
the
other
thing,
the
other
change
that
was
supposed
to
come
ahead
of
this
change,
but
unfortunately,
just
got
missed
in
preview.
One
it'll
be
in
the
next
preview
is
the
same
for
top-level
properties,
on
razor
page
models
so
that
you'll
be
able
to
have
a
string
property
or
an
in
property.
You
know
a
non
complex
type
property
on
a
page
model
and
put
a
validation
attribute
directly
on
that.
That
was
a
bit
of
feedback.
B
We
got
very
quickly
after
two,
oh,
and
so
it
turns
out
they're
both
backed
by
the
same
mechanism,
whether
their
action
parameters
or
properties
on
page
models.
So
we
did
the
underlying
work.
We
hooked
it
up
to
controllers,
but
we
just
missed
hooking
it
up
to
page
models
in
preview.
One
it'll
be
there
and
review
very.
A
Cool
okay,
alright,
so
we
have
the
tekken
power.
So
this
was
the
Valentine's
Day
release
of
round
15.
So
this
is
round
15
of
them.
I
believe
the
one
that
you
know
is
peanut
core
does
best
in
still
assists
plain
text,
so
still
respectable.
Here,
I,
don't
know
if
you
wanna
I,
think
we've
fallen
a
slight
bit:
I,
don't
know
if
you
I,
wouldn't.
C
B
B
With
yeah,
so
there's
a
couple
of
things
to
point
out
here.
First
of
all,
this
is
the
first
result
we've
had
for
a
spinet
core
to
the
previous
results
are
always
been
a
core
100
one
one.
This
is
the
first
time
we've
hit
more
than
2
million
to
actually
make
quite
a
substantial
increase
from
1
1
to
200,
which
these
benchmarks
show
the
most
of
the
people.
Above
us,
if
you
look
at
the
first
column
on
the
right
hand,
side
John,
where
it
has
says
CLS,
that's
the
classification
and
there's
micro
vs.
B
platform,
and
then
there's
our
full.
So
you
can
see
most
of
the
ones
that
are
busts
are
classified
as
platforms,
which
effectively
mean
it's
just
a
server,
there's
no
logic,
there's
no
middle
way
and
there's
no
dispatching.
You
know
there's
nothing
like
that
at
all.
It's
literally
just
an
HTTP
server.
Then
good
luck,
a
nap
on
that.
So
it's
really
just
showing
how
performant
the
underlying
HTTP
server
is.
B
We
don't
have
a
platform
test
as
yet
that
would
effectively
mean
having
there
just
be
cast
rule
and
no
dependency
injection
and
no
a
spoon
Air
Corps
middleware.
We
actually
have
some
prototypes
of
what
that
would
look
like
right
now
and
we're
planning
to
do
that
as
part
of
one.
That
is,
we
plan
to
submit
a
platform
level
test
for
plain
text.
B
Our
hope
is
that,
by
doing
that,
we
might
actually
end
up
in
the
top
five
here,
maybe
even
in
the
top
two
or
three
once
you
strip
out
all
of
the
you
know
functionality
and
you
just
learned
that
the
kestrel
web
server
things
get
incredibly
fast
very
quickly.
Now,
but
again,
all
we're
talking
about
is,
you
know,
effectively
a
mic,
a
micro
benchmark
to
measure
the
overhead
of
processing
HTTP.
The
other
thing,
as
you
pointed
out,
was
a
lot
of
these
things
in
here.
B
You've
never
heard
of
you
know,
they're
literally
either
very
new
or
they've
been
around
a
while,
but
don't
have
a
lot
of
views.
Yet
some
of
them
are
brand
new
this
round,
which
is
why,
if
you
haven't
seen
them
before
so
like
there's,
the
the
new
top
is
a
rust
based
server,
which
is
doing
very,
very
well
Tokyo
and
you'll.
Note
that
the
next
two
are
C++
they're,
both
variants
of
the
same
library
called
you
Lib.
We
have
go
in
there
using
the
fast
HTTP
server.
B
That
is
not
the
built
in
go
HTTP
server,
it's
a
different
one
and
then
there's
a
number
of
Java
platforms,
the
most
common,
obviously
being
and
probably
the
most
well-known
being
neti,
which
has
been
a
common
target
for
us
that
we
would
like
to
you
know,
get
parallel
with,
if
not
surpass,
and
then
undertow
has
been
around
awhile
but
I'm,
not
aware
of
it
being
very
widely
used.
It's
actually
a
very
nice-looking
framework.
B
If
you
ever
looked
at
undertow,
it
actually
looks
a
lot
like
a
spinet
core
in
a
lot
of
ways,
and
it
is
extremely
fast,
as
you
can
see
here,
but
to
your
point
they're.
Not
the
claim
that
we'd
like
to
make
here
is,
if
you
look
at
houseware
listed
as
a
micro,
because
this
is
literally
a
piece
of
middleware
that
runs
here,
there's
no
MVC
or
anything.
B
There
aren't
that
many
above
us
that
claimed
that
a
micro
and
I
don't
think,
there's
really
any
above
us
that
you
would
call
mainstream
I
might
be
going
out
on
a
limb
there,
I'm
happy
to
the
ones
above
us
that
particularly
certainly
know
any
of
the
scale
I
think
of
them
as
widely
used
as
us.
So
yeah
well
we're
doing
pretty
well,
but
we
want
to
continue
to
push
here
now.
B
The
next
thing
is
that
this
is
just
plain
text:
don't
care
about
the
rest
of
the
scenarios
here,
there's
basically
two
more
scenarios
as
the
json
serialization
scenario
and
then
a
series
of
different
data
access
scenarios,
the
jason
scenario
you
love
to
scroll
down
a
bit
further,
see
us.
Unfortunately,
we
have
made
improvements
here
into
our,
which
is
this
one,
but
we
still
have
a
long
way
to
go
so
there
it
is
so
you
can
see
we're
like
fifty
fifty-five
percent
of
the
top
result.
B
B
Regarding
your
reading
data
off
the
TCP
connection,
that
type
of
thing,
when
it
knows
there's
going
to
be
requests,
you
know
in
the
queue
behind
it
before
it
sent
any
replies,
which
is
why
the
plain
text
ones
are
so
much
faster
for
Jason.
That's
not
the
case,
and
so
any
latency
in
the
stack
will
now
completely
burn
you
when
it
comes
to
a
benchmark
like
this,
because
any
microsecond
of
latency
just
shows
up
as
stalling,
because
you
can't
make
the
next
request
right
right.
B
So
that's
we've
got
work
to
do
there
still,
but
you
know
we're
not
too
bad.
The
data
access
ones
is
where
we
really
fall
off
the
mark
right
now,
but
I
am
happy
to
report
that
we've
made
some
very
good
progress
working
with
the
member
of
the
community,
who
owns
the
MGP
sequel,
Postgres
sequel
driver
for
dotnet,
and
we
hope
that
the
next
version
of
that
driver,
I
think
it'll
be
version.
4,
which
will
be
out
soon,
hopefully
will
will
will
will
catapult
us
right
up
towards
the
top
of
these
benchmarks.
B
So
we've
we've
identified
a
couple
of
really
glaring
bottlenecks
in
the
data
access
providers
and
so
far
we've
determined
it's
not
actually
a
problem
with
a
do
net
post,
it's
generally
the
the
actual
code
in
the
driver,
so
Postgres,
equal
client.
You
know
my
sequel,
client,
etc,
etc,
and
by
removing
those
bottlenecks
and
applying
the
same
type,
every
good
that
we
did
with
the
Kestrel
work.
We
can
get
incredible
improvements
with
those.
So,
for
example,
if
you
scroll
to
the
top
of
the
fortunes
test,
the
falchions
is
basically
it
does
a
database.
That's.
B
A
B
That
seems
to
be
the
the
top
contender
for
our
Linux
customers,
we're
also
working
with
the
sequel,
client
team,
obviously
to
improve
their
Linux
support
and
Windows
support
so
that
it's
competitive
as
well,
so
really
good
progress
being
made
here
and
in
the
next
round
for
tech
and
power,
I
think
you'll
see.
Finally,
our
entries
in
these
data
access
ones
start
working
their
way
up
to
where
they
should
be
so.
A
B
B
Avoiding
contention
is
a
really
big
one,
so
it
locks
basically
anytime,
you
take
a
lock
you're
gonna,
hurt
yourself
in
a
micro,
benchmark
or
event
or
not
so
my
car
like
this,
and
it
turns
out
in
the
database
stacks
the
biggest
one
is
the
connection
pool
in
in.net,
which
is
very
typical
for
database
drivers.
It
isn't
actually
a
primitive
in
the
framework
they're
like
a
database
driver
author,
can't
just
new
up
a
connection,
pool
and
say
I'm
going
to
put
my
connections
in
here
and
get
a
good
one.
B
They
have
to
write
their
own,
and
so
that's
what
we
found
most
of
the
problems,
if
I
recall,
was
that
they're
the
locks
and
the
contention
causing
contention
in
the
connection
pool.
So
when
you
have
256
clients
all
trying
to
make
requests
at
the
same
time,
most
of
them
just
end
up
waiting
for
a
connection
from
the
connection
pool
to
be
retained,
and
once
we
remove
that
contention,
things
kind
of
opened
up
when
we
got
breathing
space.
So
we
have
a
lot
of
room
for
improvement.
B
Still,
as
you
mentioned,
we've
got
great
improvements
in
the
sockets
API
in
near
core
2.1,
which
is
announced
on
their
blog
post
today
on
both
windows
and
linux,
and
we
have
all
the
new
memory
and
span
stuff
which
we
expect
if,
if
they're
plumbed
through
these
stacks,
we
could
get
some
benefits
from
to
some
of
those,
things
might
even
benefit
from
changes
to
a
deonette.
So
we're
also
looking
at
that
sort
of
seeing.
B
How
far
can
we
go
using
the
existing
API
shaped
radio
net
and
then
what
could
we
achieve
if
we
were
to
add
some
new
api's
or
you're,
not
deprecated,
but
you
know
de-emphasize,
some
other
api
is
and
say
well
if
you
want
the
fastest
path
use.
These
api
is
because
the
client
can
really
optimize
this
performance
when
you
use
these
and
avoid
these
methods
and
pretty
much
anything
that's
on
the
table.
We
want
to
make
sure
that
we
can
get
a
really
good
experience.
B
B
We
said,
there's,
let's
start
with
a
socket
connection
and
just
talk
raw
binary
to
Postgres,
using
the
the
specs
on
how
to
talk
to
Postgres
and
we
built
a
very
basic
driver,
and
then
we
ran
fortunes
on
that
and
that
proved
to
us
that
there
was
nothing
inherently
wrong
with
the
networking
stack
or
C,
sharp
or
the.net
runtime
or
the
garbage
collector.
In
terms
of
being
able
to
achieve
this,
these
types
of
numbers
and
but
then
we
had
to
figure
out
what
was
a
lien
on
it
is.
The
problem
is
that
the
drivers,
etcetera,
etcetera.
B
So
for
people
who
are
interest
in
this
work,
you
can
go
up
onto
github
coms,
slash
a
spin
out.
Slash
data
access
performance,
I
think,
is
the
repo.
Can
you
verify
that,
for
me,
data
access
performance
yep-
and
this
is
where
we're
doing
all
this
work,
so
there's
a
sort
of
a
V
team
as
we
call
them
a
virtual
team
in
Microsoft
that
spreads
across
a
bunch
of
teams.
B
Ef
group,
the
asp
net
group,
the.net
group,
the
sequel,
client
group,
the
community
for
the
MPD
sequel
and
we
meet
weekly
and
we
talk
about-
and
you
know
we
have
been
doing
experiments
to
figure
out.
You
know
how
we
can
improve
this,
so
my
hope
is
that
for
the
next
round
of
tech
empower
or
even
sooner
than
on
the
new
continuous
results
they
now
are
publishing
results
continuously
on
a
different
yeah.
A
B
Yeah
and
their
training
actually
Brian,
who
runs
the
tech
empower
benchmarks,
is
in
the
chat
right
now
and
I
see
he's
talking
to
a
couple
of
folks,
I
someone's
bringing
up
TLS
performance
and
how
you
know
in
today's
world.
That's
really
all
that
matters
is
the
web
is
moving
to
TLS
by
default
and
I
totally
agree.
B
In
fact,
I
asked
Brian
about
this
a
couple
of
weeks
ago
and
I
asked
you
know
what
can
we
do
to
help
get
TLS
added
as
a
scenario
or
maybe
as
a
pivot
to
all
these
scenarios
so
that
you
could
see
the
performance
for
all
these
stacks
with
TLS
and
without
for
all
these
benchmarks,
and
so
we're
gonna
try
and
help
them
sort
of
get
that
over
the
line
this
year?
That
would
be
fantastic.
B
I
think
I
can
say
that
the
dotnet
core
Kestrel
TLS
performance
has
improved
dramatically
since
1x
in
oh,
we
made
huge
improvements
and
then
one
the
core
FX
team
has
made
even
more
improvements
in
the
SSL
stream
class.
That
provides
the
TLS
support
both
on
Windows
and
on
Linux,
and
so
our
TLS
results
for
plaintext
and
Jason
are
actually
really
good
and
so
like.
B
We
still
get
with
over
a
million
requests
per
second,
for
example,
like
we
dropped
from
1.7
to
1.1,
or
something
when
you
add
TLS,
which
is
which
is
massively
improved
on
what
it
used
to
be
like.
He
used
to
be
used
to
drop
down
to
hundreds
of
thousands
low,
hundreds
of
thousands
and
so
I'm,
actually
feeling
pretty
good
about
our
raw
TLS
performance
in
kestrel.
But
I'd
really
like
to
see
that
editor,
the
benchmark,
so
that
everyone
can
see
that
for
all
stacks
cool.
B
A
B
Now,
now
all
right,
so
what
do
one
yeah?
Let's
talk
about
one.
So,
as
I
said,
we
dropped
the
the
release.
Today,
it's
been
a
long
time
coming.
Their
plan
is
this:
is
preview
1
alright,
and
it's
really
really
important
that
as
many
folks
try
this
out,
please
I'm,
asking
I
know
it's
work.
It
is
no
goal.
I've
license
I.
Do
please
deploy
this
to
production
and
then
ring
us
up
for
paid
support.
B
That
would
really
be
the
final
final
chance
to
make
any
sort
of
behavioral
change.
That
would
likely
come
with
a
go,
live
license
and
then,
hopefully,
very
shortly
after
that
RC
with
very
minimal
changes,
if
any
will
be
able
to
our
finalized
towards
a
final
release
and
that
we're
planning
for
that
to
drop
before
the
end
of
the
first
half
of
this
year
and
everything
kind
of
continues
on
the
current
trajectory,
we
get
good
feedback
and
good
usage
I.
Think
that
will
be.
We
should
be
able
to
hit
that.
So.
B
A
B
B
Yep
and
so
they
all
cross
link
to
each
other,
so
you
know
find
one
you'll
find
all
of
them.
So,
first
of
all,
you
know
how
do
you
get
it
install?
It
could
go
to
the
the
link
there
to
download
the
dotnet
core
to
one
preview,
one
SDK
for
those
who
hadn't
followed
along
with
the
version
number
fun.
This
is
the
version
number
of
the
SDK
that
correlates
to
the
two
one
runtime.
So
this
two
one
300
is
the
version
of
the
SDK
that
maps
to
the
two
one
runtime.
B
Once
we
get
to
two
to
those
numbers
will
align
again.
Okay
and
there's
been
a
whole
series
of
public
announcements
about
this,
but
this
is
the
last
release.
Where
the
be
this
discrepancy
between
the
SDK
and
the
runtime
number
at
least
the
first
two
versions
match
now
so
install
that
that'll
get
you
the
new
runtime
it'll,
get
you
the
new
net
CLI,
if
you're
a
visual
studio
user,
you
have
to
use
the
preview
Channel
okay,
so
that
is
a
15.6
preview.
Six,
as
of
today,
obviously
that's
side
by
side.
B
So
you
can
do
that
side
by
side
with
your
normal
vs.
If
that's
going
to
be
a
problem
for
you
and
then
you
can
create
dotnet
core
and
a
screen
it
core
to
one
projects
in
there
and
work
with
them
in
there.
You
can
obviously
also
work
with
the
oh
and
earlier
projects
in
there
as
well
also
a
reminder
around
the
impact
of
machines.
The
SDKs
are
side
by
side,
as
are
the
runtimes,
but
when
you
install
the
new
SDK
it
does
become
the
default.
B
So
if
you
never,
they
are
backwards
compatible
and
they're
meant
to
be.
But
if
you
do
run
into
an
issue
working
with
an
earlier
project,
so
I
project
the
Tigers
duo
or
earlier,
then
you
can
use
a
global
tracing.
Let
me
help
with
that.
Oh
let's
do
this
live.
Can
you
see
my
screen?
I
can
see
your
screen.
Don't.
B
C
B
C
B
And
if
you
do
find
something,
please
log
it
because,
as
I
said,
they're
meant
to
be
backwards
compatible.
So
if
we
do
accidentally
introduced
a
breaking
change
in
the
SDK
that
is
you're
using
the
new
preview,
but
you're
working
on
a
200
project
or
a
1x
project,
and
you
find
a
problem
log
it
please
so
that
we
can
become
aware
of
it
and
make
sure
it
gets
fixed
yeah.
So
that's
all
good,
the
other
thing
John.
If
we
could
flip
back
to
you
John
scroll
down
a
bit,
we
are
doing
a
series
of
posts.
B
You
can
see
it.
There.
We've
got
I've
listed
out
all
the
posts
that
we
plan
to
to
publish
this
week
for
new
features
in
a
spinet
core.
As
part
of
this
release
a
couple
of
them
alive,
you
can
see
that
you've
already
clicked
on
them,
so
the
first
one
obviously
had
there
is
a
big
change
to
use
this
preview
in
Azure
app
service.
You
need
to
install
a
site
extension,
so
this
preview
and
previews
moving
forward
will
not
be
pre-installed
into
Azure
app
service.
B
Just
because
it's
preview,
so
obviously
the
the
the
the
two
one
final
release
will
be
installed
on
Azure
as
normal
and
likely
the
RC
will
be
as
well,
because
it
will
have
a
go
live
license,
but
the
previews
will
not.
So
if
you
wish
to
deploy
a
to
one
o
preview
site
to
add
your
app
service,
you'll
need
to
read
this
blog
post.
You
have
a
couple
of
options.
You
can
install
a
side
extension
that
brings
the
runtime
with
it.
B
You
can
do
a
self-contained
deployment
which
you
know,
we've
always
supported,
which
means
you
bring
the
runtime
with
the
app
or
you
can
use
docker,
which
obviously
brings
the
runtime
in
the
docker
container.
So
you
have
three
options
there,
but
it's
something
to
be
aware
of.
If
you
just
right,
mouse
click
publish
in
vs
to
Azure
app
service
with
using
two
one
preview,
one,
it
won't
work
all
right.
So
you
need
to
make
sure
you
read
that
post
after
the
we've
got
the
introduction
to
HB
client
factory,
which
I
believe
is
gonna,
go
live
imminently.
B
I
hope,
then,
is
watching
and
he's
busily
typing
that
up
and
editing
it.
Now
we
had
Brian,
obviously
talking
about
that
a
few
weeks
ago,
on
the
show
the
improvements
for
using
HTTPS
we
now
default.
All
of
our
templates
to
HP
s
by
default.
Kestrel
will
now
listen
on
HTTP
by
default.
Assuming
that
you
have
the
new
developer
certificate
installed,
we
have
a
tool
that
will
manage
the
developers
certificate
for
you
and
also
trust
it
for
you
on
Windows.
If
you
run
that
you
can
see
the
blog
post
talking
about
that,
there
I
got.
A
B
Absolutely
and
it's
adds
it
has
an
appropriate
friendly
name.
It's
like
a
spin.
It
they've
developed
a
relation
to
be
a
certificate
or
something
like
that.
So
if
you
did
that
run
the
tool
again
and
you
can
run
the
tool
in
a
wad
off
mode,
that
will
tell
you
whether
it's
there
or
not
I
believe
so
yeah,
so
that
tool
is
there
and
if
you're,
using
Visual
Studio
the
next
version,
15-7
it'll
take
care
of
just
laying
down
the
certificate
for
you
as
part
of
the
normal
file
new
process.
A
B
Need
to
run
this
tool
and
then
there's
new
middleware
to
do
smart,
HTTP
redirection,
you
know,
Scott
was
showing
us
his
use
of
the
existing
rewrite
middleware
before
to
do
redirection,
but
we've
actually
written
a
very
specific
one,
catered
just
to
HTTP
redirection
with
a
whole
bunch
of
logic
that
understands
you
know
what
ports
is
looks
like
currently
listening
on
by
looking
at
the
kestrel
bindings
and
those
type
of
things.
It
also
supports
environment
variables
for
flowing
in
the
the
front
end
sort
of
HTTP
ports
and
addresses
if
you're
running
behind
a
reverse
proxy.
B
Hsts
one,
oh
that's
the
last
part,
which
is
we
have
HSTs
middleware
now
as
well,
which
is
enabled
by
default
in
the
full
app
templates.
You
can
see
it
right
there,
such
that,
once
user
has
gone
to
the
site
once
and
gone
through
the
redirect
from
non-secure
to
secure.
They
won't
go
through
that
again.
The
law
which
just
hit
the
site
securely,
that
is
disabled
in
development
environment,
because
you
don't
want
to
do
that
on
localhost,
because
it'll
apply
to
every
single
site
running
on
localhost
and
you'll,
get
yourself
in
a
bit
of
bother.
B
So
in
the
templates,
that's
only
enabled
when
it's
running
under
the
production
environment
and
then,
similarly,
all
templates
now
will
have
a
launch
settings
file.
They
used
to
only
be
in
the
vs
template
so
in
the
command
line
that
used
to
be
optional.
If
you
create
a
new
project
from
the
command
line
there,
you
will
get
a
launch
settings
file
and
if
you
run
it
using
dotnet
run,
it
will
use
the
launch
settings
file
by
default,
which
means
that
you'll
be
in
the
development
environment
by
default,
which
is
a
huge
improvement
to
the
developer
workflow.
B
B
Lastly,
there's
a
whole
bunch
of
new
schema
based
and
configuration
you
can
use
for
setting
up
htps
in
production
and
in
docker
containers
and
things,
and
we
did
all
the
work
with
the
docker
tools
in
vs
what
you
know
team
to
ensure
that
we
flow
all
the
right
information
through
when
you
run
your
app
in
docker
for
HTS
and
all
that
type
of
stuff
as
well.
So
hopefully,
we've
done
the
end
to
end
well
there
and
it
works
well
for
everyone
in
all
the
scenarios.
B
If
you
go
back
to
the
old
signal.
Oh
that's
a
good
one.
Yeah
obviously
signal
is
a.
We
didn't
Alpher
last
year,
but
there's
a
there's
an
up
day.
Now,
it's
part
of
two
ones:
there's
a
getting
started:
building
a
chat
app
with
signal,
I
post
there
as
well.
So
people
should
follow
that
along
and
then
this
is
a
very
interesting
one.
So
compatibility
version
people
might
remember
back
in
system
web
in
web
forms
we
introduced
rendering
compat
mode,
which
is
super
critical
when
we
don't
want
to.
B
We
want
to
enable
ourselves
to
be
able
to
develop
and
and
sort
of
modernize
or
change
the
platform
over
time
without
breaking
existing
applications.
We
need
some
way
of
being
able
to
use
feature
flags
or
version
flags
in
the
application,
so
that
people
can
opt-in
new
behaviours.
So
Ryan
has
written
a
really
good
blog
post
here
that
talks
about
the
reasoning
behind
this.
What
we
will
do
and
what
we
don't
do.
This
is
not
a
license
for
us
to
break
things
all
the
time.
B
B
Of
being
able
to
say,
I
want
the
new
behavior
for
this,
but
not
for
that,
but
the
new
templates
will
always
just
you
know,
will
roll
you
forward
and
opt
you
in
to
the
latest
version
of
stuff.
So
this
is
something
to
be
mindful
of
when
you're
updating
or
to
our
app
two
to
one,
if
you're,
using
MVC,
which
I'm
assuming
most
folks
are,
is
you'll
likely
want
to
set
this
to
use
the
new
sort
of
compact
version
of
MVC.
B
You
want
the
two
one
behaviors,
not
the
200
behaviors,
if
that
makes
sense,
okay
and
covered
in
the
there's,
a
there's,
a
small
migration
guide
and
the
bottom
of
the
the
lead
post.
Where
we
announce
two
one
preview
one-
and
it
takes
you
through
the
steps
required
to
move
an
app
from
two
oh
two
to
one
so
ya
down
there
and
it
talks
about
sending
the
compact
version
step
five
in
the
second.
B
So
that's
another
good
one,
so
there's
a
whole,
a
bunch
of
other
posts
that
will
be
coming
out
over
the
next
week
as
well.
There's
some
stuff
about
things:
we've
done
to
help
with
gdpr
and
they're
cookie
policy
and
consent
and
consent
UI,
and
the
templates
is
there
by
default.
Now,
that'll
come
out
in
a
couple
of
days,
there's
stuff
about
our
changes
to
how
we
host
an
is
or
improvements
to
how
we
host
an
I,
yes,
I,
think
the
ones
gonna
go
live
today.
The
HIV
client
Factory
I,
talked
about.
B
If
you
scroll
back
up,
I
can
quickly
look
seems
anything
I'm
running
really
shown
out
to
I'll
raise
our
UI
in
a
class
library.
You
had
Xavier
on
last
week,
I
think
so.
We'll
have
a
post
about
that.
There's
some
manual
steps
you
have
to
do
now
in
preview
to
we
plan
on
having
a
class
library
template
for
doing
that
which
will
get
you
all
going.
I
was.
B
B
This
is
what
this
post
will
be
this
one
here
that
I've
said
is
we
will
talk
about
how
we've
migrated
some
of
our
tools,
the
ones
that
my
team
is
responsible
for
dotnet
watchdog,
net
user
secrets,
dotnet
sequel,
cache,
those
type
of
things.
We've
migrated
those
two
global
tools,
and
so
the
existing
project
or
CLI
tool
ref
will
be
deprecated
for
those
tools
moving
forward
the
feature
still
works.
B
You
can
still
build
project
tools,
but
we
won't
be
shipping,
those
as
project
tools,
anymore,
we're
going
to
be
shipping,
those
as
global
tools
and
we
will
prepackaged
those
in
the
CLI
from
preview
to
Ford
in
preview
1,
we
have
the
new
dev
search
tool.
Prepackaged
will
prepackaged
more
moving
forward
and
we
invite
folks
to
write
their
own
tools.
B
You
just
publish
on
you
they're,
basically
console
apps
that
you
have
a
property
on
that
says
packers
tool
and
then,
when
you
run
down
their
pack
on
them,
it
does
all
the
right
things
to
put
them
in
a
new
get
package
that
you
can
then
push
to
new
get,
and
then
people
can
do
dotnet
tools
installed
SG
as
you've
got
there.
Whatever
your
package
name
is,
and
then
the
command
appears
on
the
path,
so
it's
pretty
cool
and
there's
a
whole
bunch
of
other
stuff.
B
B
So
we'll
talk
about
that
and
then
we
have
this
generic
host
builder
for
people
who
want
to
use
the
patterns
of
our
web
host,
our
starter
class
dependency,
injection
of
logging
and
all
that
type
of
stuff,
but
they
don't
necessarily
want
to
host
a
web
server.
You
might
have
to
have
a
console
app
that
you
know
monitors
for
messages
on
a
RabbitMQ,
endpoint
or
pull
stuff
off
an
azure
queue
or
something
like
that.
But
you
want
to
use
the
same
kind
of
a
posting
model
as
a
spinette.
A
B
A
B
Funny
you
say
that
those
are
the
those
those
oh
I
love
it
when
that
happens,
because
we
get
to
essentially
do
one
set
of
work,
but
the
butt
kill
two
birds
like
it
really
is
like
we
wanted
to.
We
wanted
to
reduce
the
complexity
of
all
the
identity,
stuff
and
the
all
stuff
in
the
templates
for
very
long
time,
and
it
is
separate
to
that.
We
had
customers
asking
us.
Why
is
it
so
hard
to
work
with
razor
in
libraries
now
in
MVC,
but
in
core?
B
You
know
bits
of
apps
inside
a
library,
and
then
we
came
up
with
some
very
simple
changes
to
the
razor
view.
Engine
which
enabled
us
to
do
this.
Really
nice
composition
thing
where
you
can
knock
out
stuff
from
the
library
but
keep
the
other
stuff
as
well.
Have
them
work
together,
which
I
think
Xavier
showed
last
week,
so
we
were
really
happy
with
the
result
of
that
and
again
we
really
really
need
folks
to
try
it
out
now
as
part
of
the
preview.
So
we
can
get
that
feedback.
B
A
C
C
So
I've
got
this
little
poor
man's
database,
poor
person's
database,
where
I
go
off
and
I
call
an
API.
That's
a
very
expensive
API
right
like
a
seven-second,
API,
okay,
it's
a
megabyte
of
Jason,
so
I
have
a
the
caching
and
the
hosting
environment
logging
and
all
the
stuff.
Your
standard
cache
I
have
a
HTTP
client
static
rather
than
injected
mm-hmm.
C
Although
David's
team
doesn't
like
that,
put
this
inject
this
so
David
will
respect
me
yeah
check
to
see
if
it's
cached,
if
you
got
it
Bale,
otherwise,
lock
it
down
check
again
in
case
something
crazy
happened
in
this
white
space
here
mm-hmm.
This
is
the
part
where
I
go
and
get
it
off
the
disk.
C
C
C
B
C
Yeah,
okay,
so
here's
a
couple
of
thoughts,
yeah,
first
okay,
this
was
this
was
the
get
it
off
the
disk
and
then
async
and
and
Dave
Dave
was
teasing
me
because
it's
like
do
something.
That's
a
megabyte.
You
shouldn't
be
doing,
but
do
it
asynchronously
hold
it
in
the
large
object
heap
for
a
nanosecond
forever.
You
know
you
know
what
I
mean
and
then
deserialize
it
and
he's
like.
Why
can't
you
deserialize
it
in
chunks
like
yeah.
C
The
right,
like
I,
mean
I'm
a
stickler
for
like
an
API
to
hide
that
stuff.
Ehrman
though
then
I
could
do
it
this
way,
but
that's
synchronous.
It's.
B
So
that's
that's,
then.
This
is
the
problem
with
the
Jason
stuff.
Today
is
that
you
can
pass
in
a
stream
and
say:
hey
Jason
text
reader
go
and
read
me
stuff
off
that
stream
and
the
stream
has
async
api's,
but
I
don't
believe
that
the
Jason
text
reader
will
read
them.
Asynchronously,
there's
no
dis,
serialize
async.
As
far
as
I'm
aware
yeah.
C
C
B
C
B
B
Say:
70
kilowatts
you're
in
a
land
of
having
to
be
cognizant
of
the
fact
that
if
you
read
all
that
into
a
string,
it's
going
into
the
large
object
heap
yeah
and
reading
it
in
chunks
as
David
said,
isn't
trivial
because
you
know
for
Jason.
That
means
that
you
effectively
have
to
do
partial
pausing
to
ensure
that
you've
right-mouse.
You.
C
B
B
C
In
code
earlier
there
so
there's
a
standard
way
to
do
it,
which
is
the
kind
of
look
for
the
ending
curly
at
the
ending
mustache
yeah
right
spin
through
the
array
assume
it's
an
array
of
stuff
look
for
the
ending
mustache
of
each
top-level
object
and
deserialize.
My
point
being
that
it's
such
a
common
scenario,
I
felt
like
I
shouldn't,
be
writing
so
much
code.
Yeah.
B
C
B
B
C
C
B
Interesting
that
folks,
on
the
chat
I
like
talking
about
this
right
now
and
all
the
suggestions
are
perfectly
reasonable
ones.
The
trick
here
is
that
you're
downloading
a
blob
effectively
you're
saying
get
me
this
huge
JSON
document.
That's
why
I'm
reading
it
right
now
yeah
and
then
you
loop
through
it.
So
you
can't
just
turn
this
into
a
simple
higher
numerable
that
DC
realizes
one
show
at
a
time
you
were
getting
a
document
and
then
you
have
to
deserialize
it
as
a
document.
B
C
A
B
That
have
structure
it's
incredibly
difficult
and
I
know.
James
has
talked
about
this.
We
do
it
for
HTTP.
So
in
kestrel
does
this
behind
the
scenes
right.
We
have
to
potentially
as
very
large
uploads
and
it's
a
protocol.
It's
HTA.
We
built
a
very
specific
pull
base.
They
should
be
positive
to
do
that.
This.
C
C
B
C
C
That
makes
a
nice
URL
and
other
than
that
I
pass
in
this
index
model,
which
is
and
I
guess,
I,
don't
have
that
in
chrome
in
the
encode
I'm.
Actually
wishing
I
could
have
more
fun
stuff
in
chrome,
not
Chrome,
I
keep
saying
Chrome
I
mean
code,
like
the
lack
of
support
for
razor
pages
in
in
here.
I'm
gonna
have
to
use
a
use,
Visual
Studio,
yeah.
B
C
C
B
B
B
B
Doesn't
you
know
why
you
know
why
why
ones
patent
based
routes
and
one
is
attribute
based
routes
effectively,
so
routing
basically
has
two
entry
points
there
they're
quite
different.
What
you're
doing
there
by
saying
out
a
page
route
is
you're
effectively
adding
to
the
attribute
route
table,
whereas
convention
routes
work
a
complete
welcome.
B
C
B
C
C
This
worked
out
stunningly
wonderful
though,
and
then
down
here
I
go
and
get
those
shows
and
if
I
got
a
show
I'm
on
a
show,
page
cool
I
also
grab
the
next
16
shows
so
that
I
can,
at
the
bottom
of
the
page
say
previously
on
yep
and
then
just
in
case
someone
just
went
to
a
slash
six
instead
of
/
6
/
hour
6
show
we
cannot
alized
the
URL
and
say
no.
No.
This
is
the
right,
URL,
nice
very
good.
Then
I
am
again
I.
Don't
people
get
pissy
about
else's
and
stuff?
C
A
C
B
A
B
C
B
C
Put
it
in
a
parenthesis
yep,
because
the
leaving
leading
path
is
in
already
yep
one
I
had
to
escape
these
because
they're
Twitter
names
here
I
did
the
kind
of
the
old
style
razor
thing
here:
I
wrapped
the
whole
thing
and
I
did
a
plus
yep,
yes,
I
am
capable
and
I
know
what
I'm
doing
but
I
just
yeah.
You
know
it's
just
it's
messy
and
then
in
other
places,
I
do
the
the
new
string,
dealy
yeah,
with
the
string
attainment,
training,
interment,
isolation,
sorry
thing:
interpolation,
yeah,.
C
A
C
B
B
C
Yeah,
if
you
don't
guess
G,
it
says
no,
no
local
tools,
yep
I,
always
kind
of
thought.
It
would
be
add
tool,
but
whatever
the
point
is,
though,
there's
still
no
functional
way
to
insert
these.
The
only
thing
that
I
think
is
sad
about
that
is
that
most
people
want
I
like
the
convenience
of
being
able
to
hand
someone
the
project
and
having
the
tool
come
along
for
the
ride.
Yeah.
B
B
I
just
want
to
I
just
want
to
touch
on
this,
though
so
like
with
both
of
those
tools.
You
have
there
I
change
into
global
tools,
I
in
preview
to
I.
Think
the
world
secret
manager
already
did
change
in
preview.
Why
the
Cochin
is
changing
in
preview
too,
so
you
won't
see
these
references
anymore.
There
is
no
plan
to
to
backfill
the
feature
experience
gap
for
dealing
with
botnet
CLI
tool,
ref,
so
there's
no
new
get
dialog
work.
There's
no
command
line
to
add
these
there's
no
work
on
the
backlog.
B
B
C
A
A
A
C
Still
find
this
weird,
this
is
neither
a
tool
nor
a
nougat
package.
It's
like
a
thing
that
jumps
in
and
minimum
your
stuff
and
well.
C
C
B
A
B
B
At
that
point,
we
are
it's
actually
an
interesting
segue,
we're
running
out
of
time.
We
should
wrap
this
up,
but
the
little
bundle
in
a
fire
thing
is
not
part
of
the
a
spirit
called
Project.
It's
not
owned
by
teens.
B
Are
we
need
to
come
up
with
a
strategy
for
has
some
inbuilt
support
for
doing
this
moving
forward?
The
problem
we've
always
had
is
and
been
burnt
biases
how
quickly
the
community
continues
to
move
when
it
comes
to
the
state
of
the
art
for
JavaScript
typescript
CSS.
You
know
last
Script
lab,
remember,
Blair
and
a
lot
of
those.
You
know.
B
Best-In-Class
tools
aren't
written
in
things
that
we
can
load
as
part
of
the
normal
net
stuff
like
they
require
you
to
install
node
or
they
required
to
install
Python
or
something
like
that,
and
that's
just
not
a
good
experience.
So
we've
we
still
don't
have
a
great
answer,
but
we're
continuing
to
investigate
what
we
can
do
to
really
solve
this
with
people
out
of
the
box
in
the
future.
C
B
B
C
B
C
B
B
You've
got
the
old
package
right,
so
all
includes
everything,
and
so
what
you're
doing
is
potentially
misaligning
numbers.
The
whole
point
of
the
matter
package
is
that
it
brings
everything
in
well.
B
C
C
Know
sometimes
I'm
just
like
screw
it,
let's
yeah,
if
it
still
compiles
it,
compiles
all
shepherd
well,.
C
C
Well,
they
should
leave
because
I
suck
anyway.
The
point
is,
though
it
was
like
I
think
I
put
I,
don't
know
10
hours
into
this
and
yeah
and
minimal
work,
and
all
of
it
was
really
the
multi-threading
which
is
like
you
pointed
out.
Arguably
I
could
have
just
put
a
lock
around
an
object
and
called
it:
okay,
yeah,
but
David
and
I
were
all
and
we
go.
We
did
pick
up
one
bug
mm-hmm.
Yes,.
C
Was
this
I
wanted
to
put
the
title
here
in
view
start
and
then
later
on,
the
page
compose
on
it
right
proposed
on
the
title
yeah,
it
turns
out
this
view.
Data
somehow
is
a
different
instance
than
that
yeah.
That's
like
enrages.
B
C
B
B
B
About
that
you
know
it's
funny
about
quite
a
new
feature
in
preview
that
does
exactly
what
you're
doing
there,
where
you
can
back
properties
with
view
data
for
an
attribute
on
your
page
model,
and
then
yeah
was
I
well
now
in
your
page
model
in
your
index
model
and
then
we're
looking
at
ways
to
make
it.
Oh.
B
B
And
then
the
other
thing
we're
looking
at
doing
is
the
consumption
side
of
that
is
possibly
having
a
razor
directive.
So
you
could
say
at
view
data
at
the
top
of
this
page
and
say,
like
you
know,
generate
me
a
property
call,
this
yeah
that's
a
string
and
it
would
just
back
it
with
view
data
for
you.
So
now
you
can
just
like
past.
You
could
have
a
property
on
your
layout,
which
is
a
string
which
is
backed
by
view
data,
and
you
don't
have
to
do
the
dictionary
crap
everywhere.
C
C
Runtime,
it's
just
lighter
it's
just
a
scent.
It's
like
syntactic
sugar,
on
top
of
him
and
be
less
code.
I'm
writing
less
code.
Yeah
like
if
you
look
at
this
at
this
site,
the
the
yucky
bit
is
around
with
HTTP
and
then
this
this
double
check.
Just
like
we
went
and
did
a
sync
and
awake
yeah
wait
and
that
made
a
sing
in
a
way
stuff,
easier.
I
think
it's
time
to
build
something
into
the
framework
with
a
language
to
hide
these
double
checks.
B
Glory
yeah,
they
they
introduced
new
primitives
for
these
type
of
things
like
barrier
primitives
in
the
language
for
safe
reading,
and
writing.
It's
obviously
again
non-trivial,
oh
she's,
that
worried
a
lot
but
I
totally
agree.
It
would
be
something
that
would
be
nice
if
there
was
stronger
support
in
the
language
and
one
time
for
those
things
that
didn't.
C
B
C
All
straightforward
stuff,
so
can
we
upgrade
intent
in
five
minutes?
Six
minutes
yeah.
B
B
You
gonna
very
good.
That's
time
box
ourselves,
cuz
I
gotta
take
my
site
to
Brazil.
You
did
so
in
a
couple
minutes.
Ten
minutes
all
right,
so
good
you
see
is
proud
to
change
the
TFM
to
2.1
change.
The
version
of
a
spirit
cord
are
all
two
100
preview.
1
final,
don't
wonder!
Oh
mm
OH
preview,
1
final,
so.
B
I,
say
final
is:
when
we
build
from
our
CI
server.
The
versions
were
preview
1,
some
build
number,
so
we
need
a
version
that's
later
than,
though
semantically.
If
we
just
drop
to
the
final,
that's
actually
an
earlier
version
than
everything
we've
been
building
in
our
CI
server
for
the
past
four
months.
We
have
to
put
something
there
to
say
this
is
the
latest
one?
That's,
after
all,
the
CI
builds
now
the
CIS
are
producing
preview.
B
C
C
C
B
B
C
C
B
B
C
B
You'll
need
to
add
a
launch
settings.
It
looks
like
yours,
doesn't
have
a
launch
settings
so
you've
converted
this
from
a
previous
project.
So
you
didn't
file
new
and
vs
previously,
which
is
why
you
don't
have
a
launch
settings
file,
so
you'll
want
to
go
and
drop
one
of
those
under
the
properties
folder
or
just
copy
it
from
it
and
do
a
new
two
one
app
and
copy
it
from
there
and
then
you'll
get
the
you
know
the
right
setup,
sort
of
the
environment,
stuff
and
everything.
B
B
B
There
yep
so
that
old,
that's
the
that'll
pass
that
and
then
the
is
stuff
and
see
it's
setting
the
environment
to
development.
Now,
where
it
says
poop
on
line
19,
you
have
to
change
that
to
your
project
name.
That
profile
name
has
to
match
your
project
name,
which
is
the
folder
than
the
projects
in.
B
C
C
A
B
B
B
It's
on
the
default,
yet
we
hope
to
do
that
four
to
one,
but
it's
not
ready
yet,
but
you
could
try
that
around
here
use
sockets
yep,
which
uses
dotnet
sockets
instead
of
Libya
v4
Kestrel
I.
Can
you
can
move
to
the
dot
app
package
instead
of
the
dot
all
packaged?
We
didn't
talk
about
that
today.
We
didn't
get
enough
time,
but
I
think
I
talked
about
it.
I
think
I
spoke
about
it
previously
a
few
weeks
ago.
Actually
a
little.
B
C
C
B
I
mean,
obviously
you
can
you
can
you
can
include
individual
references
they'll,
do
it
they'll
get
knocked
out
by
they
made
a
package
of
that
the
same
version?
If
you
try
to
the
problem,
is
when
you
have
version
mismatches,
and
so,
if
you
actually
try
to
do
that
now,
you
would
get
a
warning
because
dot
app
has
the
behavior
that
if
it
detects
a
version,
mismatch
right,
it'll
it'll
either
fail
or
give
you
a
warning
and
you'll
have
to
suppress
it
manually.
So
there
are,
there
are
safety
rails.