Releases: ninject/Ninject
4.0.0-beta.1
What's changed
- Dropped support for .NET Framework 4.5. We now only provide support for the .NET Framework 4.6, .NET 6 and .NET Standard 2.0.
- Changed return value of IBindingResolver (and implementing classes) from
IEnumerable<IBinding>
toICollection<IBinding>
. - The
IConstructorScorer ConstructorScorer
andICollection<IInjectionHeuristic> InjectionHeuristics
properties has been removed from (I)Selector - Changed return value of
ISelector.SelectConstructorsForInjection(Type type)
(and implementing classes) fromIEnumerable<ConstructorInfo>
toConstructorInfo[]
. - The
T Get<T>(string key, T defaultValue)
andvoid Set(string key, object value)
methods have been removed from (I)NinjectSettings. - The
GetBindings(Type service)
method in IKernel and KernelBase now returnsIBinding[]
instead ofIEnumerable<IBinding>
. - Removed
IHaveKernel
inheritance fromIBindingSyntax
. - Removed
IInjectorFactory InjectorFactory
property fromPropertyInjectionStrategy
. - Added a
PropertyInjection
setting that can be used to control whether property injection is enabled. By default, property injection is enabled. - Added a
MethodInjection
setting that can be used to control whether method injection is enabled. By default, method injection is enabled. - Changed type of parameters argument in
Request
constructor fromIEnumerable<IParameter>
toIReadOnlyList<IParameter>
. - Changed type of parameters argument in
IResolutionRoot.CreateRequest(...)
fromIEnumerable<IParameter>
toIReadOnlyList<IParameter>
. - Changed type of parameters argument in
KernelBase.CreateRequest(...)
fromIEnumerable<IParameter>
toIReadOnlyList<IParameter>
. - Changed type of Parameters property in
IBindingConfiguration
(and implementing classes) fromICollection<IParameter>
toIList<IParameter>
. - Changed type of Parameters property in
Request
andContext
fromIEnumerable<IParameter>
toIReadOnlyList<IParameter>
. - Added a
object ResolveSingle(IRequest request)
method toIResolutionRoot
which is optimized for resolving a single instance of a given service.
This new method is used in theGet
,TryGet
andTryGetAndThrowOnInvalidBinding
extension method. - Bind/Rebind to a constant generic List always returns an empty list #333
Full Changelog: 3.3.6...v4.0.0-beta.1
3.3.6
3.3.5
3.3.5-rc2
3.3.5-rc1
3.3.4
3.3.3
3.3.2
Ninject for .NET Core can now load extensions automatically. Please note that due to the lack of AppDomain creation/unloading, all matched assemblies will be loaded even if the assembly does not contain NinjectModule. In most cases this won't be a problem.
Ninject is now CLS Compliant.
3.3.2-rc1
Ninject for .NET Core can now load extensions automatically. Please note that due to the lack of AppDomain creation/unloading, all matched assemblies will be loaded even if the assembly does not contain NinjectModule. In most cases this won't be a problem.
3.3.2-beta1
Ninject for .NET Core can now load extensions automatically. Please note that due to the lack of AppDomain creation/unloading, all matched assemblies will be loaded even if the assembly does not contain NinjectModule. In most cases this won't be a problem.
Another improvement is that when auto load assemblies, the executing assembly's directory is considered as one of the base directories.