DryIoc.Internal 4.0.7

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

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

Requires NuGet 3.3.0 or higher.

Install-Package DryIoc.Internal -Version 4.0.7
dotnet add package DryIoc.Internal --version 4.0.7
<PackageReference Include="DryIoc.Internal" Version="4.0.7" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DryIoc.Internal --version 4.0.7
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

## v4.0.7 Release notes

- fixed: #173 Validate-Method throws System.TypeInitializationException : The type initializer for 'DryIoc.OpenGenericTypeKey' threw an exception.

## v4.0.6 Release notes

- fixed: #171 Wrong IContainer resolved

## v4.0.5 Release notes

- fixed: #133 Validate method call hangs
- fixed: #134 with finding is th property is static in VB

## v4.0.4 Release notes

- fixed: #116: DryIoc Resolve with decorators goes wrong for parallel execution
- fixed: #119: v4.0.3 packages were targeting only .NET 4.5 and .NET Standard 2.0
- fixed: #120: V4.0.3 double dryioc break the build
- fixed: #121: FastExpressionCompiler.cs and Expression.cs code comment out in .NetFramework 4.7
- fixed: #124: Stackoverflow exception 4.0.3

## v4.0.3 Release notes

- fixed: #109: Cannot inject a struct using a Func wrapper
- fixed: #114: Resolve Action<T>

## v4.0.2 Release notes

- fixed: #100: ResolveMany with Meta does NOT work but collection with Meta does work

## 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

Dependencies

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 History

Version Downloads Last updated
4.5.0 84 10/12/2020
4.4.1 652 9/9/2020
4.4.0 92 9/4/2020
4.3.4 81 9/1/2020
4.3.3 278 8/27/2020
4.3.2 562 8/15/2020
4.3.1 479 8/7/2020
4.3.0 662 8/3/2020
4.2.5 85 7/20/2020
4.2.4 82 7/14/2020
4.2.3 170 7/4/2020
4.2.2 74 7/2/2020
4.2.1 96 6/8/2020
4.2.0 127 5/18/2020
4.1.4 134 4/3/2020
4.1.3 122 3/27/2020
4.1.2 137 3/12/2020
4.1.1 104 3/5/2020
4.1.0 1,493 1/20/2020
4.1.0-preview-03 140 10/3/2019
4.1.0-preview-02 133 8/25/2019
4.1.0-preview-01 143 8/21/2019
4.0.7 802 9/4/2019
4.0.6 131 8/29/2019
4.0.5 962 6/8/2019
4.0.5-preview-01 193 6/7/2019
4.0.4 1,090 5/1/2019
4.0.3 254 4/10/2019
4.0.2 2,015 3/30/2019
4.0.1 191 3/28/2019
4.0.0 267 3/4/2019
3.0.2 979 7/11/2018
3.0.1 431 7/7/2018
3.0.0 435 6/24/2018
3.0.0-preview-12 316 6/6/2018
3.0.0-preview-11 443 3/17/2018
3.0.0-preview-10 407 3/13/2018
3.0.0-preview-09 357 2/21/2018
3.0.0-preview-08 368 2/12/2018
3.0.0-preview-07 337 2/9/2018
3.0.0-preview-06 392 2/8/2018
3.0.0-preview-05 397 2/5/2018
3.0.0-preview-04 412 2/1/2018
3.0.0-preview-03 369 12/3/2017
3.0.0-preview-02 363 11/14/2017
3.0.0-preview-01 372 10/1/2017
2.12.10 399 4/11/2018
2.12.9 575 4/7/2018
2.12.8 434 3/13/2018
2.12.7 458 1/19/2018
2.12.6 434 12/21/2017
2.12.5 355 10/30/2017
2.12.4 372 10/17/2017
2.12.3 394 10/2/2017
2.12.2 379 9/17/2017
2.12.1 373 9/9/2017
2.12.0 386 9/1/2017
2.12.0-preview-01 393 8/29/2017
2.11.6 394 7/18/2017
2.11.5 405 7/12/2017
2.11.4 436 6/28/2017
2.11.3 422 6/1/2017
2.11.2 407 6/1/2017
2.11.1 411 5/31/2017
2.11.0 408 5/30/2017
2.11.0-preview-02 413 3/15/2017
2.11.0-preview-01 405 3/10/2017
2.10.7 451 5/3/2017
2.10.6 417 4/20/2017
2.10.5 418 4/4/2017
2.10.4 415 3/28/2017
2.10.3 408 3/25/2017
2.10.2 423 3/14/2017
2.10.1 420 2/18/2017
2.10.0 421 2/1/2017
2.9.7 453 1/12/2017
2.9.6 449 12/30/2016
2.9.5 446 12/26/2016
2.9.4 460 12/10/2016
2.9.3 413 12/8/2016
2.9.2 440 12/3/2016
2.9.1 442 11/19/2016
2.9.0 465 11/17/2016
2.8.5 444 11/2/2016
2.8.4 462 10/28/2016
Show less