ContainerOptions Class

Simple Injector
Configuration options for the Container.
Inheritance Hierarchy

SystemObject
  SimpleInjectorContainerOptions

Namespace:  SimpleInjector
Assembly:  SimpleInjector (in SimpleInjector.dll) Version: 4.0.0
Syntax

public class ContainerOptions

The ContainerOptions type exposes the following members.

Properties

  NameDescription
Public propertyAllowOverridingRegistrations
Gets or sets a value indicating whether the container allows overriding registrations. The default is false.
Public propertyConstructorResolutionBehavior
Gets or sets the constructor resolution behavior. By default, the container only supports types that have a single public constructor.
Public propertyContainer
Gets the container to which this ContainerOptions instance belongs to.
Public propertyDefaultLifestyle
Gets or sets the default lifestyle that the container will use when a registration is made when no lifestyle is supplied.
Public propertyDefaultScopedLifestyle
Gets or sets the default scoped lifestyle that the container should use when a registration is made using Lifestyle.Scoped.
Public propertyDependencyInjectionBehavior
Gets or sets the dependency injection behavior.
Public propertyEnableDynamicAssemblyCompilation
Gets or sets a value indicating whether the container will use dynamic assemblies for compilation. By default, this value is true for the first few containers that are created in an AppDomain and false for all other containers. You can set this value explicitly to false to prevent the use of dynamic assemblies or you can set this value explicitly to true to force more container instances to use dynamic assemblies. Note that creating an infinite number of Container instances (for instance one per web request) with this property set to true will result in a memory leak; dynamic assemblies take up memory and will only be unloaded when the AppDomain is unloaded.
Public propertyLifestyleSelectionBehavior
Gets or sets the lifestyle selection behavior. The container's default behavior is to make registrations using the Transient lifestyle.
Public propertyPropertySelectionBehavior
Gets or sets the property selection behavior. The container's default behavior is to do no property injection.
Public propertyResolveUnregisteredCollections Obsolete.
Gets or sets a value indicating whether. This method is deprecated. Changing its value will have no effect.
Public propertySuppressLifestyleMismatchVerification
Gets or sets a value indicating whether the container should suppress checking for lifestyle mismatches (see: https://simpleinjector.org/dialm) when a component is resolved. The default is false.
Public propertyUseFullyQualifiedTypeNames
Gets or sets a value indicating whether all the containers in the current AppDomain should throw exceptions that contain fully qualified type name. The default is false which means the type's namespace is omitted.
Top
Methods

  NameDescription
Public methodCode exampleRegisterResolveInterceptor
Public methodToString
Returns a string that represents the current object.
(Overrides ObjectToString.)
Top
Examples

The following example shows the typical usage of the ContainerOptions class.
C#
var container = new Container();

container.Register<ITimeProvider, DefaultTimeProvider>();

// Use of ContainerOptions class here.
container.Options.AllowOverridingRegistrations = true;

// Replaces the previous registration of ITimeProvider
container.Register<ITimeProvider, CustomTimeProvider>();
See Also

Reference