Class ServiceContainerInitialization
Initializes the IoC container. To use ServiceLocator in an initializable module add ModuleDependencyAttribute from your initializable module to ServiceContainerInitialization.
Inheritance
Inherited Members
Namespace: EPiServer.ServiceLocation
Assembly: EPiServer.Framework.dll
Version: 11.20.7Syntax
[InitializableModule]
public class ServiceContainerInitialization : IConfigurableModule, IInitializableModule
Constructors
ServiceContainerInitialization()
Default constructor.
Declaration
public ServiceContainerInitialization()
ServiceContainerInitialization(ITypeScannerLookup)
Additional constuctor that can be used from tests.
Declaration
public ServiceContainerInitialization(ITypeScannerLookup repo)
Parameters
Type | Name | Description |
---|---|---|
ITypeScannerLookup | repo |
Remarks
When using this constructor the static instance Current will not be assigned.
Methods
ConfigureContainer(ServiceConfigurationContext)
Configures the container with default services.
Declaration
public void ConfigureContainer(ServiceConfigurationContext context)
Parameters
Type | Name | Description |
---|---|---|
ServiceConfigurationContext | context | The context to configure. |
Initialize(InitializationEngine)
Initializes this instance.
Declaration
public void Initialize(InitializationEngine context)
Parameters
Type | Name | Description |
---|---|---|
InitializationEngine | context | The context. |
Remarks
Gets called as part of the EPiServer Framework initialization sequence. Note that it will be called only once per AppDomain, unless the method throws an exception. If an exception is thrown, the initialization method will be called repeadetly for each request reaching the site until the method succeeds.
Uninitialize(InitializationEngine)
Resets the module into an uninitialized state.
Declaration
public void Uninitialize(InitializationEngine context)
Parameters
Type | Name | Description |
---|---|---|
InitializationEngine | context | The context. |
Remarks
This method is usually not called when running under a web application since the web app may be shut down very abruptly, but your module should still implement it properly since it will make integration and unit testing much simpler.
Any work done by Initialize(InitializationEngine) as well as any code executing on InitComplete should be reversed.