DryIoc.Internal 4.0.1

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.

Requires NuGet 3.3.0 or higher.

dotnet add package DryIoc.Internal --version 4.0.1                
NuGet\Install-Package DryIoc.Internal -Version 4.0.1                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DryIoc.Internal" Version="4.0.1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DryIoc.Internal --version 4.0.1                
#r "nuget: DryIoc.Internal, 4.0.1"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install DryIoc.Internal as a Cake Addin
#addin nuget:?package=DryIoc.Internal&version=4.0.1

// Install DryIoc.Internal as a Cake Tool
#tool nuget:?package=DryIoc.Internal&version=4.0.1                

DryIoc is fast, small, full-featured IoC Container for .NET

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp1.0 was computed.  netcoreapp1.1 was computed.  netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard1.0 is compatible.  netstandard1.1 was computed.  netstandard1.2 was computed.  netstandard1.3 is compatible.  netstandard1.4 was computed.  netstandard1.5 was computed.  netstandard1.6 was computed.  netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net45 was computed.  net451 was computed.  net452 was computed.  net46 was computed.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen30 was computed.  tizen40 was computed.  tizen60 was computed. 
Universal Windows Platform uap was computed.  uap10.0 was computed. 
Windows Phone wp8 was computed.  wp81 was computed.  wpa81 was computed. 
Windows Store netcore was computed.  netcore45 was computed.  netcore451 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on DryIoc.Internal:

Package Downloads
CodeMonkeys.DependencyInjection.DryIoC

Addition to the CodeMonkeys.DependencyInjection package which integrates DryIoC as the background implementation.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on DryIoc.Internal:

Repository Stars
OmniSharp/csharp-language-server-protocol
Language Server Protocol in C#
Version Downloads Last updated
6.0.0-preview-08 83 10/27/2024
6.0.0-preview-07 113 3/17/2024
5.4.3 2,188 11/12/2023
5.4.2 341 10/17/2023
5.4.1 380 6/10/2023
5.4.0 253 5/1/2023
5.3.4 382 3/13/2023
5.3.3 304 2/16/2023
5.3.2 293 2/9/2023
5.3.1 695 11/28/2022
5.3.0 593 11/10/2022
5.2.2 929 8/23/2022
5.2.1 437 8/9/2022
5.2.0 496 8/3/2022
5.1.0 561 5/20/2022
5.0.2 517 5/10/2022
5.0.1 2,308 4/22/2022
5.0.0 548 4/13/2022
4.8.8 796 3/16/2022
4.8.7 551 2/27/2022
4.8.6 702 1/7/2022
4.8.5 373 12/30/2021
4.8.4 548 10/31/2021
4.8.3 482 10/20/2021
4.8.2 586 10/9/2021
4.8.1 1,519 7/3/2021
4.8.0 466 6/4/2021
4.7.8 447 5/27/2021
4.7.7 468 5/10/2021
4.7.6 2,441 4/21/2021
4.7.5 557 4/4/2021
4.7.4 506 2/26/2021
4.7.3 1,982 2/9/2021
4.7.2 787 1/16/2021
4.7.1 472 1/15/2021
4.7.0 504 1/5/2021
4.6.0 1,279 12/10/2020
4.5.2 664 12/3/2020
4.5.1 2,301 10/28/2020
4.5.0 780 10/12/2020
4.4.1 1,180 9/9/2020
4.4.0 600 9/4/2020
4.3.4 614 9/1/2020
4.3.3 816 8/27/2020
4.3.2 1,093 8/15/2020
4.3.1 1,008 8/7/2020
4.3.0 1,174 8/3/2020
4.2.5 680 7/20/2020
4.2.4 613 7/14/2020
4.2.3 658 7/4/2020
4.2.2 609 7/2/2020
4.2.1 642 6/8/2020
4.2.0 1,144 5/18/2020
4.1.4 641 4/3/2020
4.1.3 660 3/27/2020
4.1.2 599 3/12/2020
4.1.1 631 3/5/2020
4.1.0 9,715 1/20/2020
4.1.0-preview-03 420 10/3/2019
4.1.0-preview-02 448 8/25/2019
4.1.0-preview-01 427 8/21/2019
4.0.7 4,845 9/4/2019
4.0.6 696 8/29/2019
4.0.5 4,908 6/8/2019
4.0.5-preview-01 566 6/7/2019
4.0.4 7,822 5/1/2019
4.0.3 768 4/10/2019
4.0.2 2,536 3/30/2019
4.0.1 732 3/28/2019
4.0.0 764 3/4/2019
3.0.2 1,775 7/11/2018
3.0.1 1,179 7/7/2018
3.0.0 1,202 6/24/2018
3.0.0-preview-12 786 6/6/2018
3.0.0-preview-11 968 3/17/2018
3.0.0-preview-10 947 3/13/2018
3.0.0-preview-09 835 2/21/2018
3.0.0-preview-08 837 2/12/2018
3.0.0-preview-07 836 2/9/2018
3.0.0-preview-06 885 2/8/2018
3.0.0-preview-05 912 2/5/2018
3.0.0-preview-04 913 2/1/2018
3.0.0-preview-03 847 12/3/2017
3.0.0-preview-02 854 11/14/2017
3.0.0-preview-01 856 10/1/2017
2.12.10 1,150 4/11/2018
2.12.9 1,318 4/7/2018
2.12.8 1,212 3/13/2018
2.12.7 1,206 1/19/2018
2.12.6 1,149 12/21/2017
2.12.5 1,028 10/30/2017
2.12.4 1,031 10/17/2017
2.12.3 1,078 10/2/2017
2.12.2 1,031 9/17/2017
2.12.1 1,048 9/9/2017
2.12.0 1,056 9/1/2017
2.12.0-preview-01 906 8/29/2017
2.11.6 1,046 7/18/2017
2.11.5 1,112 7/12/2017
2.11.4 1,127 6/28/2017
2.11.3 1,103 6/1/2017
2.11.2 1,097 6/1/2017
2.11.1 1,098 5/31/2017
2.11.0 1,131 5/30/2017
2.11.0-preview-02 881 3/15/2017
2.11.0-preview-01 884 3/10/2017
2.10.7 1,174 5/3/2017
2.10.6 1,150 4/20/2017
2.10.5 1,104 4/4/2017
2.10.4 1,104 3/28/2017
2.10.3 1,089 3/25/2017
2.10.2 1,122 3/14/2017
2.10.1 1,111 2/18/2017
2.10.0 1,118 2/1/2017
2.9.7 1,157 1/12/2017
2.9.6 1,116 12/30/2016
2.9.5 1,148 12/26/2016
2.9.4 1,159 12/10/2016
2.9.3 1,141 12/8/2016
2.9.2 1,155 12/3/2016
2.9.1 1,120 11/19/2016
2.9.0 1,156 11/17/2016
2.8.5 1,314 11/2/2016
2.8.4 1,243 10/28/2016

## v4.0.1 Release notes

- added: #95: Serializable ContainerException for supported targets
- fixed: #97: Resolving last registration from multiple default services bug
- fixed: #89: DryIoC.CommonServiceLocator.dll package out-of-date link

## v4.0.0 Release notes

### Highlights

- DryIoc.dll and all extensions are strongly-signed.
- Greatly improved performance and decreased memory allocations for bootstrapping and first-time resolution, as well as for the rest of operations. [The results](https://github.com/dadhi/DryIoc/issues/26#issuecomment-466460255) were measured on realistic mid-sized object graph with ~40 dependencies and mixed registration types.
- `IResolver` is directly implementing (`IServiceProvider`)[https://docs.microsoft.com/en-us/dotnet/api/system.iserviceprovider?view=netframework-4.7.2] for supported platforms
- `UseInstance` is split into `RegisterInstance` and `Use` methods #78
- The docs now are generated from `.cs` files in _DryIoc.Docs_ project with up-to-date runnable examples using [CsToMd](https://github.com/dadhi/Cstomd) project.

### Features

- added: #4 Rule for Func and Lazy to be resolved even without requested service registered
- added: #8 Parity of registration methods between IContainer and IRegistrator (RegisterMapping and RegisterPlaceholder are available in IRegistrator)
- added: #9 RegisterMany should indicate if no registration was made
- added: #11 Resolution root bound dependency expression de-duplication
- added: #17 Rules.DefaultRegistrationServiceKey enhancement
- added: #20 Enhance error message with current container Rules info
- added: #32 Integrate MediatR like middleware directly to DryIoc #32
- added: #39 For troubleshooting purposes add ability to opt-out FastExpressionCompiler
- Added: #45 Consider expression interpretation to speed-up first time resolution
- added: #78 Split UseInstance two roles into separate RegisterInstance and Use
- added: DryIoc IResolver now directly implements IServiceProvider - no need for BuildServiceProvider anymore
- added: DryIoc.Rules.Rules.MicrosoftDependencyInjectionRules - the set of rules for MS.DI available directly in DryIoc
- added: FactoryInfo.Of(MemberInfo factoryMember, object factoryInstance)
- added: Explicit Factory.RegistrationOrder and adapted its usage for open-generics
- added: IRegistrator.GetRegisteredFactories
- added: FactoryType to Registrator.RegisterMapping
- added: AsyncExecutionFlowScopeContext.Default member
- added: Support for FEC v2.0

### Fixes

- fixed: #6 Open generic singleton service registration that satisfies multiple interfaces
- fixed: #7 Context-based injection
- fixed: #16 AutoConcreteTypeResolution should not consider a primitive type
- fixed: #25 Decorator with serviceKey throws exception which gives invalid advice on how to fix the issue for the most common reason to use the servicekey
- fixed: #26 Speed Optimization for short living applications
- fixed: #27 DryIoc cold start performance
- fixed: #28 FastExpressionCompiler is not used in Net Standard 1.3, 2.0 packages and not used in .Net Core
- fixed: #29 Resolve caches object[] args values
- fixed: #33 Memory leak with ResolveManyBehavior.AzLazyEnumerable?
- fixed: #41 ErrorCode: RegisteredFactoryMethodResultTypesIsNotAssignableToImplementationType
- fixed: #46 Operation is not supported on this platform exception on Xamarin iOS
- fixed: #61 Rules.SelectLastRegisteredFactory() does not account for OpenGenerics
- fixed: #63 Func wrapper resolving #63
- fixed: #75 Scoped call to Resolve() with args seems to leak memory
- fixed: BB-593 Add auto-generated tag to PCL FEC
- fixed: BB-594 Conflicting type is not working in .NET Core 2.1
- fixed: BB-596 The problem was in non-public service type- fixed: RegisterMapping for open-generic service type
- fixed: Using facadeKey in CreateFacade