Defines a lifestyle that caches instances during the execution of a single HTTP Web Request.
Unless explicitly stated otherwise, instances created by this lifestyle will be disposed at the end
of the web request.
Inheritance Hierarchy
SimpleInjectorLifestyle
SimpleInjectorScopedLifestyle
SimpleInjector.Integration.WebWebRequestLifestyle
Namespace: SimpleInjector.Integration.Web
Assembly: SimpleInjector.Integration.Web (in SimpleInjector.Integration.Web.dll) Version: 4.10.2
Syntax
The WebRequestLifestyle type exposes the following members.
Constructors
Name | Description | |
---|---|---|
WebRequestLifestyle | Initializes a new instance of the WebRequestLifestyle class. The instance
will ensure that created and cached instance will be disposed after the execution of the web
request ended and when the created object implements IDisposable. | |
WebRequestLifestyle(Boolean) | Obsolete. Initializes a new instance of the WebRequestLifestyle class. |
Properties
Name | Description | |
---|---|---|
Length | Gets the length of the lifestyle. (Inherited from ScopedLifestyle.) | |
Name | Gets the user friendly name of this lifestyle. (Inherited from Lifestyle.) |
Methods
Name | Description | |
---|---|---|
CreateCurrentScopeProvider |
Creates a delegate that upon invocation return the current Scope for this
lifestyle and the given container, or null when the delegate is executed outside
the context of such scope.
(Overrides ScopedLifestyleCreateCurrentScopeProvider(Container).) | |
CreateProducer(Type, Type, Container) |
Creates a new InstanceProducer instance for the given serviceType
that will create new instances of specified implementationType with the
caching as specified by this lifestyle.
(Inherited from Lifestyle.) | |
CreateProducerTService(FuncTService, Container) |
Creates a new InstanceProducer instance for the given TService
that will create new instances instance using the supplied instanceCreator
with the caching as specified by this lifestyle.
(Inherited from Lifestyle.) | |
CreateProducerTService(Type, Container) |
Creates a new InstanceProducer instance for the given TService
that will create new instances of specified implementationType caching as
specified by this lifestyle.
(Inherited from Lifestyle.) | |
CreateProducerTService, TImplementation(Container) |
Creates a new InstanceProducer instance for the given TService
that will create new instances of specified TImplementation with the
caching as specified by this lifestyle.
(Inherited from Lifestyle.) | |
CreateRegistration(Type, Container) |
Creates a new Registration instance defining the creation of the
specified concreteType with the caching as specified by this lifestyle,
or returns an already created Registration instance for this container + lifestyle
+ type combination.
This method might fail when run in a partial trust sandbox when concreteType
is an internal type.
(Inherited from Lifestyle.) | |
CreateRegistration(Type, FuncObject, Container) |
Creates a new Registration instance defining the creation of the
specified serviceType using the supplied instanceCreator
with the caching as specified by this lifestyle.
(Inherited from Lifestyle.) | |
CreateRegistration(Type, Type, Container) | Obsolete.
This overload has been deprecated. Please call CreateRegistration(Type, Container)
instead.
(Inherited from Lifestyle.) | |
CreateRegistrationTConcrete(Container) |
Creates a new Registration instance defining the creation of the
specified TConcrete with the caching as specified by this lifestyle,
or returns an already created Registration instance for this container + lifestyle
+ type combination.
(Inherited from Lifestyle.) | |
CreateRegistrationTService(FuncTService, Container) |
Creates a new Registration instance defining the creation of the
specified TService using the supplied instanceCreator
with the caching as specified by this lifestyle.
(Inherited from Lifestyle.) | |
CreateRegistrationCoreTConcrete(Container) |
Creates a new Registration instance defining the creation of the
specified TConcrete with the caching as specified by this lifestyle.
(Inherited from ScopedLifestyle.) | |
CreateRegistrationCoreTService(FuncTService, Container) |
When overridden in a derived class,
creates a new Registration instance defining the creation of the
specified TService using the supplied instanceCreator
with the caching as specified by this lifestyle.
(Inherited from Lifestyle.) | |
CreateRegistrationCoreTService(FuncTService, Container) |
Creates a new Registration instance defining the creation of the
specified TService using the supplied instanceCreator
with the caching as specified by this lifestyle.
(Inherited from ScopedLifestyle.) | |
GetCurrentScope |
Returns the current Scope for this lifestyle and the given
container, or null when this method is executed outside the context of a scope.
(Inherited from ScopedLifestyle.) | |
GetCurrentScopeCore |
Returns the current Scope for this lifestyle and the given
container, or null when this method is executed outside the context of a scope.
(Overrides ScopedLifestyleGetCurrentScopeCore(Container).) | |
RegisterForDisposal |
Adds the disposable to the list of items that will get disposed when the
scope ends.
(Inherited from ScopedLifestyle.) | |
WhenCurrentRequestEnds | Obsolete.
Allows registering an action delegate that will be called when the scope ends,
but before the scope disposes any instances.
| |
WhenScopeEnds |
Allows registering an action delegate that will be called when the scope ends,
but before the scope disposes any instances.
(Inherited from ScopedLifestyle.) |
Examples
C#
var container = new Container(); container.Options.DefaultScopedLifestyle = new WebRequestLifestyle(); container.Register<IUnitOfWork, EntityFrameworkUnitOfWork>(Lifestyle.Scoped);
See Also