Simple Injector v1.5.0

Rating: No reviews yet
Downloads: 2036
Change Set: 92922
Released: Jul 17, 2012
Updated: Feb 25, 2013 by dot_NET_Junkie
Dev status: Stable Help Icon

Recommended Download

Application SimpleInjector Runtime Library v1.5.0.12199.zip
application, 487K, uploaded Jul 17, 2012 - 1080 downloads

Other Available Downloads

Application SimpleInjector Silverlight Runtime Library v1.5.0.12199.zip
application, 368K, uploaded Jul 17, 2012 - 95 downloads
Source Code SimpleInjector Source Code v1.5.0.12199.zip
source code, 1335K, uploaded Jul 17, 2012 - 740 downloads
Documentation SimpleInjector.chm
documentation, 305K, uploaded Jul 17, 2012 - 121 downloads

Release Notes

NOTE: Simple Injector v1.5.0 NOT the latest release. Please click on the Downloads tab above to find the latest Simple Injector release.

This release fixes a minor bug and adds several extension points to the core library and contains improved support for working with (generic) decorators.

New features and improvements in this release for the SimpleInjector.dll
  • Extension points added in the form of ContainerOptions.ConstructorXXXBehavior, which allows developers to override the behavior of constructor resolution and injection. (work item 18097)
  • Container.Options property has been added, to allow easy access to the ContainerOptions instance.

Bug fixes in this release for the SimpleInjector.dll
  • Container did not self-register when created with Container(ContainerOptions) constructor. (work item 18139)

New features and improvements in this release for the SimpleInjector.Extensions.dll
  • RegisterDecorator extension methods now allow injecting Func<ServiceType> delegates. This enables some interesting advanced scenarios where the creation of the decorated instance should be delayed. (work item 18211). Read the updated Decorator wiki page for more information.
  • RegisterSingleDecorator overloads added. These overloads are especially useful when injecting Func<ServiceType> delegates into decorators.
  • When collections are registered using RegisterAll overloads that either take a list of System.Type instances or a array of singletons (so not with RegisterAll<T>(IEnumerable<T>)), the predicate supplied to RegisterDecorator will be called on each item in the collection, instead of being called once for the complete collection. This allows individual items to be decorated while skipping others.
  • The extension methods Register(this Container, Type service, Type implementation) and RegisterSingle(this Container, Type service, Type implementation) now allow supplying the same type for service and implementation, which registers the type by itself. (work item 18234)

Bug fixes in this release for the SimpleInjector.Extensions.dll
  • RegisterAll did not allow registering a service type that equaled the registered service type, for instance container.RegisterAll<IService>(new[] { typeof(IService) }) failed.
  • Conditional decoration (using the Predicate<DecoratorPredicateContext>) fixed for decorating items in collections. The predicate was not checked on collections.
  • When registering decorators, the IEnumerable<ServiceType> type was supplied to the Predicate<DecoratorPredicateContext>through the ServiceType property, instead of the service type itself when decorating collections.

Reviews for this release

No reviews yet for this release.