►
Description
Join members from the ASP.NET teams for our community standup covering great community contributions for ASP.NET, ASP.NET Core, and more.
This week, Damian talks to Jimmy Campbell, from the Azure App Configuration team about their new library for doing feature flags in .NET apps, and optionally integrating it with the new Azure App Configuration service.
Suggest an idea for a standup: http://aka.ms/dotnet-standup-suggestion
A
Hello,
everybody,
it's
just
us
today:
I
have
a
guest
how's
it
going
hello,
introduce
yourself
I'm,
Jamie
Campbell.
This
is
Jimmy
Campbell.
We
don't
have
John
today
and
we
don't
have
Scott
today.
It
is
just
me:
I
am
here
to
host
Jimmy
to
have
him
show
off
your
new
features
right
right.
It's
just
about
features,
funnily
enough,
so
we're
gonna
have
a
lot
of
confused
overloading
at
the
time
features
yeah,
okay,
awesome!
So
I'm,
assuming
we
don't
have
any
community
update
for
you
this
week,
because
John's
not
here
John
is
traveling.
Scott
is
traveling.
Also.
A
So,
as
I
said,
it's
just
me,
but
we're
gonna
be
talking
about
feature
flags
or
some
new
features
that
you
can
get
access
to
for
a
package
that
was
released
last
week.
Was
it
last
week
yeah,
so
we
released
the
first
preview
package
a
week
and
a
half
ago,
okay,
most
name
of
the
package.
Microsoft
feature
management,
asp
net
core
would
be
the
one
that
you
want
to
use.
A
A
So
if
it
folks
have
probably
frito
familiar
with
the
idea
of
feature
flags,
yes
and
the
ability
to
deploy
a
new
feature
in
your
app
and
turn
it
on
for
some
subset
of
users
or
for
one
deployment,
not
another,
all
right
deploy
the
app
with
all
the
features
turned
off
or
all
of
them,
but
the
new
ones
turned
off
and
then
flip
a
flag
and
config
to
have
it
turn
on
at
some
point
in
time.
I'm
assuming
this
is
all
yeah
all
right.
A
Well,
as
I
said,
I
don't
have
any
other
content
today,
other
than
what
I'm
sure
is
gonna,
be
an
awesome
overview
of
this
new
stuff
from
from
this
team.
So
without
further
ado,
I
want
to
throw
it
over
to
you.
Alright,
give
us
an
introduction
and
show
us
all.
You've
got
alright
cool,
yeah,
so
I'm
here
to
talk
about
the
feature
management
library
that
my
team
just
developed,
we've
been
working
on
it
for
a
little
while
because
we
realized
that
a
lot
of
micro
services.
Today
we
have
like
globally
deployed
applications.
A
Sometimes
you
want
to
release
features
and
a
certain
region
or
something
or
you
just
want
to
do.
A/B
testing
or
just
dark,
deploy
whatever,
but
we've
been
seeing
this
around
the
community
and
also
internally
a
lot.
There's
been
just
kind
of
need
for
future
management
in
general,
and
so
the
idea
was
just
let's
develop
something:
that's
kind
of
standardized
basic
simple,
so
we
can
start
really
building
apps
out
at
scale
that
have
a
core
model
that
people
have
to
relearn
for
future
management.
A
Okay,
and
we
want
to
develop
something
step,
simple
kind
of
like
borderlining,
on
the
extensions
namespace
right
just
right
on
top
of
the
framework
allowing
for
future
management
to
get
done
in
applications.
Okay,
so
it
works.
It's
done
it's
standard.
It
is
done
a
set
of
two,
its
net
standard
yeah,
so
you
can
better
onto
user
and
any.net
app,
then,
no
matter
where
it's.
What
type
of
app
it
is
you
can
use
it
in
it
right,
okay,
exactly
and
some
it's
not
tied
to
dock
their
core
3.
It's
a
separate
thing!
A
You
can
use
it
now.
If
you
want
even
get
it
using
you
don't
like
you,
can
do
Apple
exactly
and
start
using
it
right
now.
It
is
a
preview
package,
so
you
can
just
get
it.
Will
prob
will
be
iterating
a
little
bit?
Okay,
we
need
really
finalize
the
API,
we're
pretty
stable
for
the
most
part,
but
we're
reserving
it
for
as
we
see,
usage
and
whatnot
and
then,
if
we
want
to
go
quickly
into
the
GA
with
it
and
really
ok,
so
your
hard-luck
GA
this
year,
absolutely
100%,
yes,
fantastic!
A
A
As
simple
okay,
it's
interesting
in
the
past,
I
I
mean
I've
worked
at
Microsoft
coming
up
to
10
years,
so
I
haven't
built
relapse
for
a
long
time,
but
when
I
did
before
I
came
to
Microsoft
my
job
was
a
web
developer
and
all
that
stuff
and
when
the
largest
sites
we
worked
on,
we
did
feature
flags,
but
back
then
we
didn't
have
built-in
framework
features
for
it.
We
had,
then
we
had
a
web
farm
with
30
odd
servers
in
it.
A
We
would
do
a
deployment
of
a
new
app
feature
and
we
would
just
have
a
database
table.
The
database
table
held
name
value
pairs
effectively
for
the
configuration
values
that
we
wanted,
the
app
to
be
able
to
read,
and
then
we
would
have
another
column
which
was
things
like.
Well,
what
server
do
you
want
this
to
apply
to,
so
that
we
could
roll
out
the
app
with
you
know,
like
a
new
feature
turned
off
like
I
said,
and
then
you
could
turn
it
on
on
one
server
right
get
direct.
You
know,
separately.
A
You'd
set
up
your
load
balancer
so
that
some
percentage
of
think
we'd
go
to
that
server.
You
would
monitor
it
and
see
if
the
feature
was
working
well
right
and
then,
if
it
was
working
well,
you
could
turn
it
on
it,
a
few
more
servers
and
then
you
could
just
look
like
a
different
thing,
we're
going
to
go
everywhere
or
if
we
had
features
that
to
deploy
in
a
compatible
way.
You
need
to
do
it
over
more
than
one
sprint.
A
For
example,
you
know
database
change
plus
some
of
the
schema
change,
plus
maybe
an
aspx
file
back.
Then
it
was
aspx
whatever
it
is
now
and
you
couldn't
have
one
without
the
other,
so
you
would
go
wow.
This
release
will
deploy
this
file
and
we'll
flip
the
feature
off
and
then
the
next
release
the
other
file
come
on,
and
then
we
can
turn
it
on
so
are
assuming
that's
all
the
same
exact
same
ID
and
one
of
the
things
you
mentioned
about
was
like
getting
the
server's
to
have
the
this
server.
A
A
The
low
barrier
entry,
like
anybody
is
doing
asp
net
core
apps
has
some
idea
with
the
configuration
provider
they'll
be
able
to
hook
that
up
to
this
feature
management,
library
very
easily,
okay,
so
low
barrier
to
entry
controlling
things
dealing
with
things
like
feature
flag
lifetime.
So
the
request
the
feature
should
stay
consistent,
regardless
of
whether
you
update
configuration
during
the
request
session
based
things
stuff
like
that,
are
problems
we
aim
to
solve.
A
Okay
and
then
providing
integration
points
into
frameworks
such
as
routing
MVC
filters,
action
attributes,
alright,
so
I'm
gonna
make
it
easy
to
just
consume
right
out
of
the
box.
So
getting
some
questions
coming
in
already,
so
I
might
just
shoot
the
map
down
while
servitor
in
context.
So
someone
on
Twitter
oxi
on
Twitter,
sir,
is
asking:
is
this
meant
for
feature
configuration
for,
say,
hosting,
assess
so
I'm
assuming
to
extrapolate
in
a
bit
me?
A
So,
most
of
the
time,
you
might
think
that
it's
okay,
it's
just
for
the
application
as
a
whole,
so
something
more
like
rollouts
or
a/b
testing,
but
if
you're
doing
the
more
tenant
based
stuff,
if
you're
able
to
inject,
because
we
want
to
stay
simple
with
eye
configuration
right,
tilting
right
on
top
of
it.
If
you're
able
to
kind
of
scope
your
eye
configuration
to
where
that's
where
you
pulled
tenant
configuration
absolutely
or
you
can
somehow
implement
well
I'm
thinking
most
of
the
time
your
tenant
and
data
might
be
in
a
database.
Okay,
yeah.
A
But
if
you
have
a
database
provider
that
can
map
that
to
eye
configuration,
then
you
can
absolutely
utilize
these
api's
that
we
hope
to
become
standardized
for
future
management.
Okay,
I
think
that
would
be
how
that
plugs
in
okay.
So,
basically
in
summary,
because
you're
a
venire
on
our
configuration
as
long
as
you
can
map,
wherever
your
tenants
right
stuff
is
right
through
the
eye
configuration
interface
right,
you
can
use
the
feature
stuff
and
if
that's
something
that
becomes
common,
a
package
could
come
out
or
we
can
provide
the
function
size
to
adapt.
That
yep.
A
Absolutely
or
at
least
provide
with
the
guidance
of
how
this
is
how
it's
done:
okay,
cool,
that's
pretty
wide
open
for
that,
so
yeah
and
I
just
want
to
start
off
with
like
in
this
la
in
this
package.
We
have
a
notion
of
feature
flags,
so
that's
the
thing
that
you
has
a
name
and
that's
what
you're?
Turning
on
and
off
and
another
type
that
I
kinda
need
to
discuss
is
feature
filters.
Okay,
so
you
have
a
flag
like
maybe
the
beta
feature.
A
A
feature
filter
is
something
a
dynamic
criteria
may
be
based
on
a
request.
For
example,
super
users
have
access
to
it,
or
people
from
the
Chrome
browser
have
access
to
beta.
Okay,
that's
called
a
feature
filter,
so
those
are
the
two
high-level
concepts
I'd
like
to
just
like
get
off
before
we
start
diving
into
things.
Also,
we
have
the
name
feature
filters.
A
You
can
easily
do
on
and
off
feature
or
you
can
add
some
feature
filters
to
make
it
kind
of
more
dynamic
right,
and
so,
with
that
I'll
kind
of
jump
out
of
the
giant
wall
text
and
go
into
a
little
bit
more
of
the
application
itself,
so
feature
management.
When
you
start
out,
it's
really
just
the
configuration
of
your
features
at
first,
that's
the
first
thing
you're
going
to
be
doing
so.
I
want
to
start
with,
like
what
the
configuration
looks
like
our
convention.
A
If
you're
using
app
settings
Jason,
which
goes
into
the
configuration
provider,
add
Jason
file
or
create
default
builder,
is
gonna,
pull
it
off
automatically.
You
would
just
define
a
feature
management
section
here,
and
here
you
can
see.
We
have
these
items
over
here.
Home
beta
custom
view
data,
these
top-level
keys
right
are
your
features.
Okay,
this
is
our
convention
for
defining
our
features.
A
The
simple
features
have
a
boolean
value.
This
would
be
useful
for
like
a
dark
deployment
like
what
you
say.
Okay,
it's
off
I
want
to
switch
it
on
okay,
and
as
long
as
you
have
a
hooked
up
provider,
that's
able
to
watch
for
configuration
changes.
Then
it's
going
to
be
updated
on
the
fly
when
you
set
that
to
true,
and
as
an
example,
the
Jason
file
is
is
change
away.
Yes,
by
default
and
I.
Think
that's
really.
The
only
one
I
think
that
we
ship
that
is
foggy,
there's
change
away
by
default
right.
A
The
one
I'm
gonna
go
over
at
the
end
is
how
service-
yes,
fantastic,
a
service
that
you
that
were
developing
functionality
for
ESP
Network
great,
which
provides
a
way
to
dynamically
update
configuration,
okay
cool.
So
yes,
so
we're
defining
these
features,
the
simple
ones
just
on
and
off
the
true/false
and
then
the
second
idea
of
the
feature
flag,
of
course,
is
the
ones
that
can
be
enabled
dynamically.
So
that
would
be
like
this
beta
feature
right
here
we
say
the
beta
feature
is
enabled
for
and
here's
one
of
those
feature
filters.
A
The
browser
feature
filter
a
feature
filter.
We
have
a
few
out-of-the-box
for
some
common
functionality
that
makes
sense
to
implement
with
features
okay.
For
example,
I
want
we
ship
this
one
percentage,
and
this
you
can
name
space
if
you
have
conflicts
or
something
but
a
feature
called
Microsoft
a
feature
filter
named
Microsoft
percentage.
You
can
set
the
value
of
the
percentage,
and
this
basically
saying
50%
of
requests
are
gonna
hit
this
feature.
Okay,
that's
gonna,
be
testing
exactly
okay.
These
are
extensible
I'm,
assuming
exactly
you
can
make
your
own
feature
for
fans
right.
A
So
time
window
is
another
one
we
come
with,
but
this
browser
one
is
one
that
I
implemented
in
this
little
demo:
project
right,
okay
and
so
the
schema
or
configuring.
Those
is
generic,
obviously,
because
there's
a
plug-in
through
any
config
provide
exactly
you
could
set
these
from
anybody
variable
or
whatever
it
is.
A
You
want
to
do
because
it
comes
through
config
and
so
the
enable
for
is
your
property,
and
that
says
these
are
filters
actually
matches
our
affinity
and
then
you
can
have
multiples
exactly
and
then
the
name
maps,
to
sum
the
name
name
or
type
name
name-
is
required,
but
then
we
get
into
the
parameters
and
it's
a
loose
bags
loose
bag.
It
won't
pass
into
I
configuration
to
your
implementation.
Okay,
we
can
either
use
it
as
I
configuration
or
map
it
bind
it
to
your
object,
using
the
options.
A
Mapping,
it'll
s
exactly
and
I'll,
go
into
the
browser
filter
and
have
a
look
at
the
code.
We
can
have
a
look
at
that
great
yeah,
so
this
is
kind
of
how
it's
defined.
If
you
want
to
go
simple
on
all
feature
or
if
you
want
to
do
dynamic,
enabling
we're
kind
of
gonna
try
to
cover
the
most
basic
scenarios
that
make
sense,
and
you
can
go
more
in-depth
if
you
wish.
Okay,
that's
the
idea
with
that.
A
So
then,
now
that
we
talked
about
what
I
would
say,
the
Foundation,
which
is
configuring,
the
feature
I'll
go
into
using
it.
Okay,
all
right.
So
this
is
startup
of
asp,
net
core
application,
and
we
have
our
service
collection
here,
yep
all
right,
so
you
can
see
that
we're
adding
feature
management
and
that's
going
to
add
all
the
services
that
we
need
to
start
using
these
api's
within
our
within
our
application.
Okay,
the
feature
filters
I
talked
about.
You
just
register
the
my
top.
A
You
register
them
by
type
remark
and,
of
course,
put
this
an
extension
method
or
something
I
kinda
just
want
to
make
this
explicit,
yeah
sure.
Using
these
feature
filters,
there
could
absolutely
be
feature
filter
packages
developed
in
the
future
that
you
have
great
criteria
for
enabling
features
as
damien's
great
feature,
filter
pack,
and
it
puts
precisely
okay,
I'm
counting
on
you
for
that.
Oh
yeah,
sure
that's
my
next
case.
A
Oh,
you
can
add,
feature
filters,
and
then
this
last
one
it's
kind
of
to
display
the
idea
that
this
is
a
builder
okay,
yep,
there's
custom
functionality
that
we're
gonna
open
up
in
this
example.
When
a
feature,
a
controller,
maybe
has
action.
That
requires
a
feature
and
you
want
to
override
the
response
use.
Disabled
features
handler,
okay,
okay,
so
I'll
kind
of
show
when
I
actually
get
to
use
all
there.
So
once
you
register
services,
I
think
that's
a
pretty
common
thing.
You
can
start
using
them
in
the
application.
A
So
let's
go
to
a
controller
and
actually
see
the
the
service
that
we
just
registered
and
usually
check
us.
So
we
have
a.
We
have
a
question:
that's
about
hooking
into
authorization,
so
I,
guess
it's
it's
own
Automator,
it's
more
about
understanding
the
life
time
of
when
these
two
systems
are
made
within
the
scope
of
the
app.
A
Obviously,
authorization
is
per
request
and
you
may
request
a
filters
could
be
per
request,
so
I'm,
assuming
they're
they're,
registered
as
scoped
services
in
this
Bennett
cool
yeah
so
seem
like
it
would
be
well
actually
for
singleton
with
the
method
that
gets
called.
It
evaluate
pro
said
that
can't
that's
a
common
pattern
that
we
have
in
ace.
You
know
that's
cool,
so
it's
possible
to
hook
into
authorization.
Is
there
context
so
you
the
feature?
Filter
is
implemented
and
our
base
package
Microsoft
up
feature
management.
A
So
it's
a
is
peanut
core
agnostic,
I,
don't
know
anything
about
it,
but
peanut
core
has
a
notion.
There
there's
two
things
to
get
in
with
the
authorization:
one
is
how
do
I
get
data
from
my
request
or
anything
contextual
yep,
the
HP
context,
access
or
allows
you
to
do
that?
Okay,
so
you
have
to
use
the
content
and
and
I'll
just
go
to.
I
was
gonna,
I'll
just
go
to
browser.
Filter
now
go
okay,
we
can
see
it
in
action.
A
Okay
makes
sense,
but
this
filter
this
I
feature
filter
that
you
have
to
extend
is
a
is
peanut
core
agnostic.
That's
why
we
need
to
get
this
HP
context:
accessor,
okay,
alright,
but
then
inside
the
browser
future
filter.
We
can
evaluate
some
criteria.
Okay,
see
if
I
should
make
this
feature,
enabled
okay,
so
that
that's
not
an
uncommon
pattern
right
right,
plugging
into
a
spinet
core,
exactly
be
agnostic.
That
I
do
exist
and
then
you
have
to
rely
on
di
to
get
exactly
all
that
gets
you
there
and
I.
Think
it's
a
beautiful
thing.
A
It
allows
us
to
create
decoupled
packages,
okay
and
it's
so
so.
The
short
answer
is
yes,
you
could
totally
do
it.
You
have
to.
You
would
get
the
user
off
the
HP
context
which
you
can
get
for
the
HP
context,
access
or
inside
your
filter
and
then
from
the
user.
You
can
get
things
like
user
claims
and
write
and
then
determine
your
authorization
based
on
that
right
and
then
the
second
part,
it's
a
little
bit
of
a
two-part
story
here.
A
Something
will
advance
a
little
bit
more
than
the
time
to
come,
but
is
the
idea
of
like
we
have
that
percentage
feature
filter
that
I
that
I
showed
if
50%
of
requests
are
enabling
a
feature
you
might
want
that
to
be
sticky,
okay,
yeah,
and
so
there
the
library
exposes
this
notion
of
the
I
session
manager
right
here,
I'm,
not
using
at
the
moment.
This
is
something
we're
gonna
advance
on.
Maybe
you
want
to
put
the
stay
of
the
feature
once
it's
evaluated
is
on
or
off
associated
with
asp
net
core
session.
A
Okay,
however,
you're
managing
your
session,
so
this
I
session
manager,
I
can
kind
of
just
go
into.
It-
will
definitely
make
some
progress
on
this
one,
but-
and
it
is
that
my
guess
is
that's
a
performance.
Is
that
just
for
performance,
so
the
idea
I
don't
have
to
re-evaluate
every
single
time.
The
idea
is
so
you
can
be
persistent
on
any
way
you
define.
I
saw
okay.
If
you
want,
you
can
implement
session
manager,
but
you
can
store
this
actual
session
data.
A
A
So
if
you
have
session
state,
you
just
have
a
cookie.
You
just
create
a
very
simple
implementation
of
this
yep
that
just
takes
whenever
the
feature
management
library
will
invoke
this
yep.
So
when
it
evaluates
it
set
that
into
the
session
state
I
say,
and
then
it
warned
and
then
when
it
gets
it
in
the
future.
Yes,
it
really
gets
it
and
it
will
evaluate
the
feature
anymore.
Just
say,
session.
State
knows
this
feature.
A
What's
a
concrete
example
of
a
feature
that
you
might
want
to,
if
you
just
have
cysts
into
the
session
of
something
you
have
a
beta
access
to
a
website:
okay,
30
percent
of
your
users
yep
and
you
have
anonymous
access
yep,
so
they're
not
logged
in
or
anything,
but
they
have
a
cookie.
They
have
a
session
or
whatnot,
and
you
just
want
to
make
sure
when
that
guy
refresh
as
the
page
he
gets
the
beta
access.
Still
it
doesn't
just
disappear.
A
A
It
would
be
those
filters
that
are
designed
to
be
somewhat
ephemeral
rather
than
based
on
context
that
you're
getting
from
them
exactly,
but
once
the
decision
is
made,
you
want
it
to
be
persistent
right
for
whoever
that
was
precisely
to
implement
this,
so
that
you
can
track
put
the
evaluation
exactly
you
don't
want
it
to
just
be
lost,
or
else
it's
gonna
be
really
weird
when
people
using
it
it's
disappeared.
So
you
could
also
just
make
this
right
at
its
own
cookie.
A
For
example,
if
you
wanted
to
you,
have
a
generic
well,
that's
just
like
I
always
write
it
out
to
a
cookie
based
on
the
feature
name,
exactly
make
sense.
So
yeah.
That's
how
we'll
deal
with
that?
Okay
I'll
advance
a
little
bit
more
as
we
go
on
all
right,
so
we
were
gonna,
go
to
home
controller,
so
the
easiest
way
to
kind
of
use
feature
management
is
to
get
the
I
feature.
Manager
interface,
which
is
what
everything
is
built
off
of.
A
I
feature
managers:
what's
going
to
be
added
into
the
service
collection
when
you
call
add
future
management
right
it,
it
says
it's
not
async,
because
it's
built
on
my
configuration
and
I
configuration
is
synchronous
from
the
from
the
bottom.
So
right
you
don't
need
Anthony,
awaits
or
anything
like
that,
and
it's
a
simple
interface.
It
is
enabled
based
on
a
feature
name.
Okay.
A
So
if,
in
your
code
you
can
see
we're
using
it
here,
we
get
the
future
manager
actually
to
get
a
feature
manager
snapshot
to
keep
it
consistent
with
less
yep
and
then
we're
just
gonna
say.
Is
this
feature
enabled
and
we
put
our
features
and
an
enum
over
here-
just
get
the
name
and
then
we'll
we're
gonna
modify
the
view
data.
A
If
this
feature
is
enabled
it's
kind
of
a
arca
typical
example
of
it
yep
and
then
that's
pretty
much
the
most
basic
way
to
use
it,
but,
like
I
said
we
offer
integration
points
into
the
framework,
so
kind
of
go
over
those.
The
most
common
one
I
expect
is
the
feature
attribute
here.
This
is
kind
of
one
of
the
things
that
were
we
don't
know.
If
it's
a
little
too
generic,
we
might
rename
it
to
feature
gate
just
because
your
gate
is
feature
so
feature.
A
It
might
be
a
little
too
generic
for
this,
and
but
we're
gonna
identify
that.
So
in
this
case,
you
would
404
if
the
current
request
hadn't
opted
in
it
exactly
my
default.
If
you
decorate
this
with
a
feature
and
the
feature
is
not
enabled
you're
gonna
get
a
404
okay,
but
you
remember
in
the
beginning,
I
registered
this.
This
you
have
disabled
features
handler,
so
actually
I'm
gonna
do
a
little
bit
of
a
custom
thing
if
it's
disabled,
I'm,
gonna
change
the
view
to
a
feature
not
enabled
view.
Okay,
basically,
oh
nice.
A
So
now
you
basically
get
a
callback
that
you
can
exactly
I
get
a
callback
because
I
didn't
like
the
standard
implement
I
like
I'm
yeah,
no
I.
You
want
to
be
at
a
different
shape
between
a
for
and
for
real,
exactly
exactly
so,
there's
definitely
out
of
box.
We
don't
want
to
be
too
complicated
out
of
the
box,
get
it.
If
you
want
to
extend
it,
you
can,
and
that
attribute
obviously
I'm
assuming
would
work
on
a
razor
page
model
as
well.
A
Yes,
and
is
there
a
way
to
set
it
by
conventions
in
razor
pages?
If
you
want
to
set
it
for
a
whole
folder,
for
example,
I,
don't
think
we
targeted
okay,
sure.
A
There
you
go
yeah
I,
expect
that
we'll
get
right
now
we
started
with
kind
of
a
core
of
integrations
in
the
asp
net,
core
yep
and
kind
of
build
upon
I,
like
even
the
day
I
was
thinking
I'd
like
to
have
a
redirect
baked
in
somehow
based
on
the
future.
Okay,
but
I.
Don't
have
that
and
I
want
to
think
about
that
all
right,
I
make
sense,
so
others
work
to
come
for
sure.
Someone's
asking.
A
How
would
you
do
a
be
testing
of
a
view
would
also
have
a
companion
action
for
the
a
be
various
so
product
owner
top
of
my
head.
I
would
be
like.
Well,
we
have
a
feature
called
a
view,
location
expander,
which
is
a
thing
that
you
can
plug
into
an
infinite
call.
So
you
could
absolutely
build
yourself
a
view,
location
expander
that
toggles
based
on
a
feature
exactly
and
then
you
can
basically
have
your
view.
A
Files
like
food,
CS,
HTML
and
you
can
say
like
food
feature,
name,
see
HTML
and
food
other
feature
name
or
food
off
without
the
feature
name:
gracias,
HTML
right
and
then
you
can
build
a
view,
location
expanded.
That
would
do
that,
switching
for
you
completely
automatically
or
you
could
lug
that
as
an
enhancement
and
get
them
to
build
it
for
you
right.
That's
how
I
would
probably
start
out
looking
yeah
and
that
that's
kind
of
one
of
the
great
things
by
ESPN
core
is
you
can
pretty
much
plug
in
wherever
you
want
right.
A
That's
a
perfectly
valid
solution,
but
we
do
want
to
find
out
what
those
yeah
issues
are,
because
you
can
see
like
one
of
the
how
we
do
that
right
now
how
we
integrate,
for
example,
I,
have
this
third
party
action
filter.
This
is
an
NBC
action
filter
just
doing
some
logging,
based
on
the
request,
right
and
I
want
to
register
that
into
my
MVC
kind
of
pipeline
and
I
only
wanted
to
execute
if
certain
features
enabled
right.
A
So
we
can
say
what
the
syntax
expose
from
our
package
would
be
filters
add
for
feature,
then
the
filter,
nice,
the
name
of
the
feature
all
right.
So
now
this
filter
is
only
gonna
even
appear
in
the
pipeline.
If
that
feature
is
enabled
very
cool,
so
we
have
the
same
exact
thing
for
middleware.
You
can
see.
We
use
a
middleware
for
a
future
third-party
middleware.
This
is
built
on
the
even
more
simple
case
of
use,
use
for
feature.
A
I
lost
the
intellisense
here
news
for
future
and
then
so
you
can
even
just
build
your
application
branches
based
on
feature
functionality
awesome,
and
it's
going
to
take
this
different
path.
If
you
use
today,
writing
the
if
statement,
basically
exactly
because
this
is
doing
and
it
lets
you
know
that
you
are
integrating
into
future,
why
you're
doing
it.
So
if
you
have
a
task
of
saying
hey
for
this
feature,
you
look
at
this.
You
know
where
you're
using
features
you
can
easily
identify
it
cool
so
yeah.
A
This
middleware
is
not
even
gonna,
be
part
of
the
request
pipeline.
If
enhanced
pipeline
feature
is
not
enabled
or
I
can
change
that
dynamically
during
the
runtime
application
and
just
completely
remove
it
from
your
middleware.
That's
just
that's
pretty
cool
be
executed,
that's
cool!
That's
something!
Asp
net
core
gives
us
and
we
build
on
top
of
that
functionality.
A
Another
thing
here
that
we
integrate
with
is
routing.
You
can
see
that
we
have
map
route
for
feature
so
beta
route
here
or
if
the
beta
features
enabled
sorry
yep
we're
gonna
create
a
beta
default
route
and
the
new
default
controller
is
gonna,
be
beta.
Oh
cool,
ok,
so
any
way
that
you
could
potentially
exactly
switch
out
what
you
get
we
do
have
routing
functionality,
improvements
and
it
a
stack
or
300
within
point
routing,
so
kind
of
looking
to
that.
A
Ok,
as
we
go
forward,
is
yeah
I
could
imagine
potentially
using
a
route
condition
as
well
in
conditional
routing.
Okay,
someone
asked
just
a
follow-up
question
is
something
I
said
before
about
be
location:
expanders?
Are
they
not
cached
sending
is
no
they're
not
because
you
can
use
your
location
expanders
for
things
like?
Is
it
a
mobile
device
and
if
it
is
then
give
me
the
mobile
view
or
you
can
use
it
for
localization?
That
obviously
can't
be.
Does
it
have
a
reusable
I?
Don't
think
it
does.
A
I
think
I
think
that
if
you
register
a
view,
location,
expander
I
think
it's
always
evaluated
whenever
the
view
is
asked
for
based
on
the
view,
engine
sorry
sounds
good
yeah.
So
that's
that's
a
lot
of
it.
Oh
one,
more
important
thing
here:
mm-hmm
we
have
a
feature
tag
helper,
let's
see
which
one
it
is
in
home,
I
love
to
go
about
yeah,
so
the
tag
helper,
oh
yeah.
A
This
is
also
another
thing.
We've
identified
for
some
improvement
here
kind
of
have
a
positive
and
negative
case
yeah.
So
we
went
through
the
exact
same
thing
when
we
built
the
environment
tag,
helping
out
with
names,
and
then
we
realized
that
was
wrong.
We
should
have
made
it
include
next
glued,
so
we
have
two
right
yep
exactly
so
that
is
there
as
well.
If
the
functionality
here
would
be,
if
the
features
enabled
the
content
side
would
render,
if
not,
then
the
content
is
going
to
be
ignored.
A
It's
not
gonna
be
put
into
the
page,
go
yeah.
So
that
is
the
points
where
we
use
it
now.
I'll
kind
of
just
show
this
thing
in
action
here,
yep
all
right,
so
just
boot
up
the
demo.
Let's
look
at
the
configuration
to
see
what
we
should
be
seeing.
So,
let's
look
at
this
beta
feature.
I
put
a
beta
feature
into
my
application
that
had
the
default
route,
I
was
using
the
default
route
for
it.
I
guess
I'll
just
go
and
show
that
I
had
a
default
route
being
added
for
beta
feature.
A
I
also
have
a
beta
controller,
and
the
index
method
is
locked
down
using
the
feature
attribute.
Okay,
so
now
I
loaded,
my
application.
This
is
the
standard
template
for
asp
net
core,
with
some
future
management
stuff
baked
into
it.
Now
we
see
that
I
enabled
beta
on
edge
browser
all
right
with
that
browser
filter
that
I
implemented
myself.
Okay,
so
if
I
go
to
edge,
maybe
I'll
see
some
different
analogy
while
as
I
did
something
with
this
feature,
and
yes,
okay,
I
have
a
feature
of
tag
helper
here:
adding
a
link.
A
A
Yet
so
it's
gonna
hit
that
disable,
Handler
and
but
I
keep
doing
some
more
work
and
the
future
and
I
redeploy
my
app,
but
my
configuration
is
independent
of
my
app
and
I
want
to
start
enabling
chrome
now
so
I
go
into
my
configuration
in
this
case.
It's
apps
that
he's
at
Jason
and
I
just
add,
chrome,
and
we
can
see.
This
is
where
the
dynamic
functionality
comes
into
play
now:
Chronos
beta
nice.
A
Alright,
so
we
had
a
convention
for
defining
my
features,
conventions
for
utilizing
those
features
in
code
and
now
I
can
start
going
around
on
the
apps
and
using
this
in
a
supported,
unified
manner
right
what's
dynamic
and
we're
gonna
be
building
even
more
functionality
into
this.
That's
a
great
example
of
the
reloadable
config
in
a
spirit
core
for
folks.
You
haven't
seen
it
before
that's
wired
up
by
default.
A
If
you
using
the
JSON
file
provider
right,
if
you're,
reading,
config
and
you're
reading
it
through
the
appropriate
API
and
then
mapping
it
through
options
as
well
with
option
snapshot,
then
even
if
you're
accessing
the
options
after
it's
been
bound
from
conflict
to
options,
you'll
get
any
changes
that
have
flowed
through
from
the
file
change.
So
exactly
yeah,
that's
great
yep,
and
then
so.
A
That's
the
feature
management
library
that
pretty
much
hits
on
a
lot
of
the
functionality.
Is
it
open
source?
Some
folks
are
asking
where
the
code
is:
it's
not
open
source.
Yes,
so
was
a
yes
at
the
end,
I
like
that.
That's
good!
Ok,
ok,
yeah!
It's
not
open
source.
Yet,
but
I
I'm,
that's
what
we're
aiming
for
and
I
got
no
reason
for
not.
A
It
is
docked,
though
right
so
sorry,
so
the
team
that
I'm
with
is
actually
the
azure
app
configuration
team,
okay
and
we're
the
ones
developing
this
and
kind
of
driving
this
at
the
moment.
Okay,
now
eventually
to
go
open-source
it'll
be
way
more
of
community-driven
type
thing.
Okay
expecting,
but
the
docs
right
now
are
living
with
our
service
dogs.
But
there
are
dogs
are
there.
Are
tests
are
in
the
Azure
SDK
for
dotnet
preview
area,
yeah
developers?
Yes,
I
can
see.
The
interface
is
a
docked,
there's
a
whole
section
on
feature
management.
A
This
is
I
think
this
is
a
drive
configuration,
but
this
is
where
you
have
the
docs
right
now:
okay,
and
eventually
this
as
this
matures
yeah,
if
it's
open
source,
obviously
and
a
lot
of
Doc's
will
be
there-
the
readme
will
be
there
and
so
but
right
now,
it's
a
preview,
we're
kind
of
developing
and
growing
it
cool.
But
this
kind
of
brings
me
into
my
next
thing,
which
is
like
we
were
saying
before.
A
A
lot
of
this
functionality,
at
least
we're
being
dynamic,
depends
on
your
configuration
providers
right
and
us
where
the
ads
are
out
configuration
team
and
we
have
a
configuration
provider
for
asp.net
core
okay,
and
this
hooks
up
to
the
ad
rep
configuration
service
which
it's
basically
a
simple
key
value
provider
for
application
configuration.
But
it
supports
extensive
query
histories
of
your
key
values.
The
ability
actually
end
the
azure
portal.
A
If
you're
using
this
thing,
you
can
diff
between,
like
what
did
my
configuration
look
like
a
week
ago,
you'll
see
like
key
values,
the
last
modified
time
tags
I'll,
just
change
trying
to
fit
in
it,
does
change
track
angle.
You
can
we're
working
on
a
feature
right
now,
we'll
be
able
to
restore
your
configuration
to
like
a
week
ago.
If
I
went
wrong,
it'll
give
you
a
preview
of
what
is
gonna,
be
restored
and
I'll.
Do
it
a
forward
roll
a
forward
roll
back?
If
you
will
right,
it
doesn't
really
take
you
back.
A
You
don't
lose
the
history,
but
it
supplies
what
it
was
a
week
ago.
So
we
just
have
that
service
and
that's
something
we're
working
on,
but
we
have
a
asp
net
core
configuration
provider
so
and
code
in
this
project
right
now,
I'm,
actually
looking
I'm
actually
pulling
in
my
config
builder
I,
have
configure
app
configuration
and
I'm
adding
a
drought
configuration
this.
Is
our
provider
add,
as
your
app
configuration
is
app
config
service?
So
why
are
as
the
Microsoft
feature
management
is
peanut
core
is
not
coupled
in
any
way
to
our
service
a
completely
decoupled.
A
If
you
use
Microsoft
offi
management,
I
use
been
a
core.
You
are
not
coupled
to
a
drought
configuration,
but
since
we're
configuration
provider
we
can
give
you
those
flags.
We
can
enable
the
dynamic
turning
on
and
off
of
features
and
that's
kind
of
where
I
think
the
a/b
testing
story
can
really
become
completed
right.
You
can
go
on
and
off,
and
so
here
the
configuration
builder
were
adding
a
drought
configuration
and
we
expose
a
method
called
use,
feature
flags.
A
The
azure
app
configuration
provider
does,
and
this
is
because
we
store
it
in
a
certain
content
manner
and
we
kind
of
do
a
little
bit
of
a
transform
before
we
hook
it
up
into
the
actual
application
configuration
key
values,
and
this
also
hooks
up
watching
of
the
key
values.
So
can
you
change
it
in
your
app?
You
will
get
the
update,
very
cool,
so
we're
using
this
right
now.
I
can
actually
show
this
right
now.
I
kind
of
just
have
this
simple
template
asp
net
core
page,
but
I
can
go
into
my
app
configuration.
A
I
have
this
feature
manager
tab
right
here
where
I
can
create
feature
flags
for
my
asp
net,
core
applications
or
whatever
application
and
the
future
that
wants
to
use
feature
flags,
and
I
can
just
turn
this
feature
on.
So
this
is
kind
of
like
one
one
configuration
provider
that
you
can
use
for
your
future
management.
Ok
and
now
my
application
is
using
feature
flags.
A
So
that's
why
30
seconds
is
kind
of
a
respectable
default,
but
you
can
see
now
the
application
just
changed.
A
little
because
I
put
a
little
big,
Easter,
Egg,
literally
in
the
middle
of
my
application.
So
that's
that's
kind
of
a
more
complete
story
of
now.
I
have
a
way
to
be
if
I
want
to
develop
a
micro
service
which
asp
net
core
is
great
for
your
developing
micro
services
and
then
I
want
to
deploy
them,
have
feature
management
and
have
be
in
the
background
and
kind
of
start
toggling
things
in
a
centralized
manner.
A
Like
you
said,
I
have
different
servers.
App
configuration
offers
the
ability
to
kind
of
go
servers
individually,
yeah
but,
like
I
said
before,
that's
a
configuration
provider
to
provide
the
feature.
Management
just
gets
the
configuration,
and
so
you
can
use
future
manage
without
a
drive
configuration
but
will
plug
in
for
you.
If
you
want
to
use
it
right
and
that's
kind
of
like
on
more
whole
story.
Okay,
let's
we've
got
a
few
more
questions.
Let's
someone
is
actually
asking.
A
Would
third-party
feature
management
apps
like
launch
Darkly,
be
able
to
integrate
with
UI
feature
manager,
so
it's
totally
true
manager
is
completely
decoupled.
So
if
launch
Darkly
wanted
to
start
providing
integration
into
the
Microsoft
future
management
library,
they
completely
can
okay,
it's
just
a
matter
of
them,
surfacing
their
their
configuration
and
the
convention
that
we've
defined
right.
So,
if
long
is
they're
able
to
say
hey,
you
can
pull
launch
Darkly
configuration,
put
it
in
AI
configuration
provider
and
put
it
in
this
interface.
A
A
So
I
can
see
those
but
I
need
to
see
down
here
to
get
the
YouTube
ones
because
it
answers
like
yes,
the
same
mechanism
there's
something
hidden
exactly
they
either
come
through
config
or
even
if
they,
whether
you
do
it
by
the
specific
conflict
provider
or
whether
you
plug
in
existing
ones.
But
all
the
mechanisms
are
there,
it's
it's.
It's
not
unique
in
any
way
right.
It
should
be
fine.
A
The
only
thing
is
that
there
is
a
implied
convention
of
how
you
map
the
config
schema
that
you
exactly
to
the
seizure
management
feature,
which
is
all
fair
enough.
It's
interesting,
though,
I
wonder
if,
in
the
future
there's
whether
we
would
add
an
imperative
way
of
defining
features
rather
than
one
that's
maps,
yes
to
config
I'd.
Add
to
some
folks
might
ask
this
is
great,
but
I
want
a
different
way
to
be
able
to
plug
in
and
provide
features.
Yes,
it
code
all
right
with
not
using
my
configuration.
A
A
X86
cowboy
asks!
Is
there
any
general
guidance
on
what
feature
Flags
should
not
be
used
for,
for
example,
like
using
feature
flags
as
a
system
to
separate
regular
and
paid
users
of
a
website,
or
you
just
don't
have
any
opinions
like
use
it
for
whatever
makes
sense
or
other
words,
I
think
that
an
answer
would
be
subjective?
Okay,
given
that
it
right
now
is
driven
from
config
uh-huh,
it
kind
of
already
puts
in
it
a
bit
of
a
box
of
what
you
would
use
it
for
right.
It's
like
we
just
talked
about.
A
You
could
imagine
the
future
right
plumbing
in
maybe
a
different
way
would
open
up
other
scenarios.
It
might
be
a
little
difficult
or
clumsy.
Yes,
yes
and
and
I
think
I
started
off.
One
of
the
things
I
said
is
conventionally.
What
I've
seen
is
configuration
is
usually
used
for
application
level.
Things
right.
You
can
absolutely
use
configuration
for
tenant
level
things,
but
usually
your
tenant
is
stored
in
a
database,
it's
isolated
and
that's
where
you're
pooling
data
for
that
tenant.
Okay.
A
Now,
if
if
this
becomes
a
common
thing,
certainly
where
there
can
be
a
way
for
us
to
realize
this,
to
transform
it
to
where
Microsoft
that
feature
management
can
use
that
thing
yep,
but
at
least
from
the
idea
of
building
from
configuration,
it
sounds
a
little
ok,
fair
enough.
Let's
have
a
look
here.
Did
you
do
some
folks
answering.
A
Scrolling
scrolling,
sorry,
everyone,
alright,
so
a
question
about
the
config
store
in
Asia.
So
if
you're
using
the
config
store
in
Asia
to
do
this,
does
each
request
to
the
app
imply
a
request
to
the
service
to
get
the
current
feature
configuration
or
is
a
cache
for
periods
of
time?
Now
I
think
you
said
it
as
polled
and
then
every
30
seconds
you
pull
it
down
and
refresh
Ryan
fix
it.
So
every
request
it's
more
of
its
pushed
into
the
app
yes.
So
this
is
for
app
configuration
polling,
yeah
yeah.
A
It
is
pulling
from
the
service
and
it
will
update
the
configuration
when
that
changes
and
one
of
the
things
we're
at
configuration
also
went
into
preview
recently
and
we're
also
working
on
that
I'm,
proving
that
another
thing
we
want
to
get
out
there
by
the
end
of
the
year
and
really
be
full
fledge
on
we're
also
improving
that
functionality.
Because
one
thing
is
sometimes
you
want
to
be
a
little
bit
different
than
a
30,
constant
30,
second
poll.
A
If
your
application
is
resting
for
an
hour
yeah,
maybe
you
get
a
request
an
hour
later
and
that
wakes
up
and
then
you
pull
ice
or
something
like
that.
Okay,
some
criteria
and
that's
those
are
things
were
identifying.
But
to
answer
the
question
right
now
you
pull
every
30
seconds
with
this
and
it's
gonna
pull
it.
It's
going
to
update
our
configuration
if
it
sees
changes.
What's
the
pricing
and
like
resulting
model
gonna
be
for
the
service?
Is
it
preview
right
see
it's
a
preview?
A
So
if
you
want
to
go
play
with
this
and
some
preview,
it's
free
okay.
So
we
don't
have
any
announcements
about
the
eventual
price.
No
announcements
for
pricing.
Okay,
so
try
it
now!
Well,
it's
free,
so
I
did
want
to
actually
get
back
to
the
tenant
based
thing.
Okay,
so
if
I
may
have
mixed
up
some
ideas
here,
but
it's
absolutely
valid
to
have
a
feature
filter,
that's
using
user
as
a
criteria.
A
So
that's
a
thing
that
we,
for
example,
I
use
browser
to
enable
the
beta,
but
certainly
I,
could
have
a
group
of
users
identified
and
analyze
their
group
during
their
quests
and
allow
them
to
access
the
beta
so
I.
Guess
they
nerve
to
map
it
back
to
what
you
were
saying
about
tennis.
You
could
then
say
well.
My
features
are
defined
by
config,
but
another
feature
filter
that
looks
at
the
current
tenant
database.
A
Yes,
says
is
this
feature
enabled
for
this
tenant
right,
but
normally
you
would
expect
maybe
somewhere
earlier
on
in
the
pipeline,
you
get
the
information
for
the
user.
You
carry
that
contextually
through
the
okay
and
then
you
would
say:
okay.
Does
this
user?
Have
this
almost
claim
based
yeah
yeah,
which
we
had
that
question
before?
Actually
so,
yeah,
okay,
fair
enough
valid
scenario,
someone
the
few
folks
have
been
asking
about
blazer
and
razor
or
spas
in
general
as
well,
and
how
would
the?
How
would
they
utilize
this
for
also
client-side
ply?
A
Thank
you
so
we're
we're
looking
at
this
issue.
We
wanted
to
start
with
the
web.
The
app
web
based
application
first,
but
we
do
know
that
client-side
is
somewhere.
We
want
to
target
and
we're
trying
to
think
of
this
right
now.
There
are
certainly
ideas
such
as
maybe
expose
and
endpoint
yep
easily,
which
feature
flag
configuration
is
not
a
secret.
No,
so
if
you're,
just
exposing
a
route
or
an
endpoint
or
something
your
client
side,
that
you're
delivering
connect,
go
right
back
and
access
it.
A
Okay
or
it
can
be
delivered
with
the
client
side,
and
then
it
can
just
consume
it
there,
and
you
can
still
do
that
refreshing
caching,
the
thing
if
you
wanted
to
well
yes,
if
you're
going
back
and
you're
doing
the
endpoint
conception
model,
you
have
to
do
the
caching,
but
if
you're
delivering
it
with
it
yeah.
They
are
already
refresh
this
well
that
unless
you
have
some
yeah
pretty
much
there
or
to
be
told
okay,
fair
enough,
but
nothing
there
right
now,
nothing
there
right
now!
A
It's
something
that
we
definitely
want
to
get
straightened
out
there,
because
it's
valid.
So
for
those
of
you
who
are
using
blaze
already-
and
you
may
have
seen
the
tag
helper-
that
was
shown
before
and
you're
like
oh
I'd-
love
that
equivalent
in
blazer,
which
in
Blazer
I
think
would
be
a
directive
attribute,
it
would
be
an
attribute.
You
could
pull
on
any
element,
any
blazer
component
and
then
that
plays
a
component
wouldn't
be
part
of
the
tree.
A
If
the
feature
flag
wasn't
so
in
the
feedback,
all
right
or
better,
create
a
sample
using
the
primitives
that
we
have
and
use
that
as
its
starting.
Your
discussion
for
how
that
feature
might
look,
so
it
seems
it
seems
like
there's
a
few
different
approaches.
You
were
on
the
idea
of
feedback.
I
did
mention
all
that
configuration
team.
Okay,
so
as
a
slash
out
configuration
a
slash
out
configuration
and
the
open
source
topic
was
brought
up,
perhaps
as
repo
a
change,
but
obviously
there
be
an
announcement
for
that.
Okay.
A
But
if
you
start
you
want
to
go
out
and
use
this.
The
repository
is
Microsoft
feature
management,
ie,
asp,
net
core
great,
our
Doc's
are,
with
our
service
nests,
will
link
to
additional
feature
management
Doc's
at
the
bottom.
Ok,
and
if
you
want
to
file
issues,
github
comm
such
as
your
app
can
slash
out
configuration
ok
and
the
NuGet
package.
I
did
pasted
into
twitch
before
I
didn't
paste
it
into
the
YouTube
chat.
But
it's
a
Microsoft
feature.
Management
is
the
core
package
and
there's
feature
management
Microsoft.
A
future
management
is
gonna
call.
A
A
To
like
is
the
variable
that
stores
whether
this
feature
was
turned
on
so
there's
a
couple
different
ways:
I
guess:
do
you
trace
by
default
or
logout
by
right
logging
or
so
a
default?
We
we
don't!
Okay,
if
you
wanted
to
do
this
at
the
moment,
what
you
would
have
to
do
is
maybe
somewhere
in
the
request
pipeline.
If
you
want
to
have
a
dump,
yeah
go
through
your
features
and
see
which
ones
are
enabled
for
requests
and
then
just
tell
you,
you
could
basically
brought
a
middle
way.
A
Yeah
just
log
looks
at
the
features
that
are
currently
enabled.
It
was
love
those
out
right.
That
would
be
interesting
as
far
as
having
a
feature
or
API
that
just
enumerates
every
feature
and
gets
their
states
it's.
It
could
be
expensive
because
you
don't
know
what
kind
of
criteria
are
evaluating
those
features
you
might
start
running
feature
filters.
It
could
be
a
expensive
call.
A
Now,
none
of
the
primitives
that
in
this
first
preview
are
logging,
but
we
could
that's
easy
to
add
exactly
okay
cool.
Let's
have
a
look
just
need
to
look
down
at
YouTube
to
make
sure
nothing
new.
There's
there
anything
up
here,
there'd
be
helpful,
looking
a
stack
traces
yep,
some
of
the
context,
and
that
was
okay,
I.
Think.
That's,
probably
the
bulk
of
the
questions
that
we
have.
Oh
there's
one
there
from
everybody
thought
in
the
context
yeah.
A
So
it's
similar
the
question
that
was
basically
to
write
the
first
part
it
is
stored
in
the
context
you
can
get
the
I
feature,
manager,
snapshot
and
check
the
feature,
but
I
suppose
right
now,
but
we
would
need
to
add,
is
the
ability
to
know
which
feature
got
access?
Yes
right:
okay,
cool!
Well,
thanks
for
coming
in
today,
yeah
awesome.
Thank
you
for
having
sounds
like
folks
are
pretty
interested
in
this.
Let's
I'm
sure
we'll
see
hundreds
of
downloads
of
this
package.
Now
that
you've
been
on
the
show,
all
right
question
come
in.
A
Can
you
decorate
an
entire
controller
with
the
attributes,
so
you've
showed
it
on
an
action
method?
Can
you
put
on?
Yes,
you
can?
Okay,
certainly
absolutely
so.
Yeah
I
encourage
folks
to
try
this
out
we'd
love
to
get
feedback
again,
pass
that
feedback
over
to
the
github
repo.
That
was
pointed
out
all
right,
but
yeah
thanks
for
coming,
you
don't
have
a
Twitter
handle
or
anything
that
people
can
directly
pester
you
with
questions
I
I,
don't
I'm,
guess
I'm
incognito!
No,
no
problem
is
a
github
repo.
A
You
can
say:
I
saw
that
great
demo
and
I
want
to
ask
more
questions
about
what
was
shown
so
another
problem
at
all,
thanks
for
coming
on.
If
anyone
has
any
follow-up
questions,
please
you
can
send
them
to
me
on
Twitter.
If
you
want
and
I
can
direct
them
through
and
try-
and
there
is
a
slack-
oh
it's
a
slack
though
they
got
anyone
in
real
time.
A
small
sum
test
as
soon
as
I
can
awesome
all
right
thanks.
Thank
you.