DryIoc 4.1.0-preview-03

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

This is a prerelease version of DryIoc.

Requires NuGet 3.3.0 or higher.

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

Release Notes

## v4.1.0

### Briefly:

- Better memory and performance for the real-world applications - big object graphs and the Unit-of-work scenarios
- FEC V3.0 optimized for nested lambda invocation (scoped services in DryIoc) and consuming less memory
- Rules.WithUseInterpretation to work iOS
- Streamlined ambient ScopeContext scope disposal, ensuring more predictable AsyncExecutionFlowScopeContext, ThreadScopeContext behavior

### Bug fixes:

- 151 Resolve problem with ThreadScopeContext in version 4.0.*


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

  • .NETFramework 3.5

    • No dependencies.
  • .NETFramework 4.0

    • No dependencies.
  • .NETFramework 4.5

    • No dependencies.
  • .NETStandard 1.0

  • .NETStandard 1.3

  • .NETStandard 2.0

  • Portable Class Library (.NETFramework 4.0, Silverlight 5.0, Windows 8.0, WindowsPhone 8.0, WindowsPhoneApp 8.1)

    • No dependencies.
  • Portable Class Library (.NETFramework 4.5, Windows 8.0, WindowsPhone 8.0, WindowsPhoneApp 8.1)

    • No dependencies.

Showing the top 3 GitHub repositories that depend on DryIoc:

Repository Stars
jbogard/MediatR
Simple, unambitious mediator implementation in .NET
dotnetcore/AspectCore-Framework
AspectCore is an AOP-based cross platform framework for .NET Standard.
seesharper/LightInject
An ultra lightweight IoC container

Version History

Version Downloads Last updated
4.1.0-preview-03 75 10/3/2019
4.1.0-preview-02 173 8/25/2019
4.1.0-preview-01 6,040 8/21/2019
4.0.7 4,464 9/4/2019
4.0.6 398 8/29/2019
4.0.5 15,333 6/8/2019
4.0.5-preview-01 6,079 6/7/2019
4.0.4 7,845 5/1/2019
4.0.3 6,647 4/10/2019
4.0.2 6,397 3/30/2019
4.0.1 6,107 3/28/2019
4.0.0 6,966 3/4/2019
4.0.0-preview-02 6,134 2/22/2019
4.0.0-preview-01 8,751 12/1/2018
3.1.0-preview-07 6,179 11/20/2018
3.0.2 21,677 7/11/2018
3.0.1 6,269 7/7/2018
3.0.0 6,600 6/24/2018
3.0.0-preview-12 6,264 6/6/2018
3.0.0-preview-11 6,506 3/17/2018
3.0.0-preview-10 6,265 3/13/2018
3.0.0-preview-09 7,748 2/21/2018
3.0.0-preview-08 6,255 2/12/2018
3.0.0-preview-07 6,276 2/9/2018
3.0.0-preview-06 6,271 2/8/2018
3.0.0-preview-05 6,262 2/5/2018
3.0.0-preview-04 6,266 2/1/2018
3.0.0-preview-03 6,360 12/3/2017
3.0.0-preview-02 6,747 11/14/2017
3.0.0-preview-01 6,293 10/1/2017
2.12.10 13,028 4/11/2018
2.12.9 6,505 4/7/2018
2.12.8 7,339 3/13/2018
2.12.7 9,744 1/19/2018
2.12.6 7,266 12/21/2017
2.12.5 13,233 10/30/2017
2.12.4 6,528 10/17/2017
2.12.3 8,022 10/2/2017
2.12.2 6,934 9/17/2017
2.12.1 6,429 9/9/2017
2.12.0 7,540 9/1/2017
2.12.0-preview-01 6,248 8/29/2017
2.11.6 10,043 7/18/2017
2.11.5 6,408 7/12/2017
2.11.4 6,737 6/28/2017
2.11.3 6,828 6/1/2017
2.11.2 6,280 6/1/2017
2.11.1 6,348 5/31/2017
2.11.0 6,297 5/30/2017
2.11.0-preview-02 6,467 3/15/2017
2.11.0-preview-01 6,278 3/10/2017
2.10.7 8,433 5/3/2017
2.10.6 40,987 4/20/2017
2.10.5 6,714 4/4/2017
2.10.4 6,451 3/28/2017
2.10.3 6,441 3/25/2017
2.10.2 9,882 3/14/2017
2.10.1 7,831 2/18/2017
2.10.0 11,267 2/1/2017
2.9.7 7,664 1/12/2017
2.9.6 7,016 12/30/2016
2.9.5 6,366 12/26/2016
2.9.4 6,795 12/10/2016
2.9.3 6,440 12/8/2016
2.9.2 6,472 12/3/2016
2.9.1 7,745 11/19/2016
2.9.0 6,365 11/17/2016
2.8.5 6,954 11/2/2016
2.8.4 6,478 10/28/2016
2.8.3 12,166 10/20/2016
2.8.2 6,577 10/20/2016
2.8.1 6,349 10/19/2016
2.8.0 6,319 10/18/2016
2.8.0-preview-01 6,303 10/13/2016
2.7.1 7,412 9/1/2016
2.7.0 6,793 8/19/2016
2.6.4 7,005 7/29/2016
2.6.3 6,581 7/9/2016
2.6.2 9,008 6/13/2016
2.6.0 6,432 6/10/2016
2.5.1 7,091 6/7/2016
2.5.0 8,068 5/24/2016
2.4.3 6,841 5/7/2016
2.4.2 6,724 4/26/2016
2.4.1 6,474 4/16/2016
2.4.0 6,602 4/14/2016
2.3.0 7,208 3/30/2016
2.2.2 7,994 3/10/2016
2.2.1 6,378 3/8/2016
2.2.0 6,715 2/26/2016
2.1.3 7,932 1/17/2016
2.1.2 6,421 1/15/2016
2.1.1 6,674 1/4/2016
2.1.0 6,822 12/4/2015
2.0.2 6,623 12/1/2015
2.0.1 6,391 11/27/2015
2.0.0 7,274 11/19/2015
2.0.0-rc4build353 6,335 11/18/2015
2.0.0-rc4build352 6,311 11/17/2015
2.0.0-rc4build351 6,360 11/17/2015
2.0.0-rc4build350 6,325 11/17/2015
2.0.0-rc4build349 6,354 11/12/2015
2.0.0-rc4build348 6,331 11/12/2015
2.0.0-rc4build347 6,328 11/12/2015
2.0.0-rc4build346 6,300 11/12/2015
2.0.0-rc4build345 6,300 11/12/2015
2.0.0-rc4build344 6,333 11/7/2015
2.0.0-rc4build343 6,335 11/5/2015
2.0.0-rc4build342 6,396 11/1/2015
2.0.0-rc4build341 6,331 10/29/2015
2.0.0-rc4build340 6,308 11/12/2015
2.0.0-rc4build339 6,316 11/7/2015
2.0.0-rc4build338 6,312 11/5/2015
2.0.0-rc4build337 6,307 11/1/2015
2.0.0-rc4build336 6,319 10/29/2015
2.0.0-rc3build340 6,319 10/26/2015
2.0.0-rc3build339 6,321 10/26/2015
2.0.0-rc3build338 6,331 10/23/2015
2.0.0-rc3build337 6,336 10/20/2015
2.0.0-rc3build336 6,353 10/19/2015
2.0.0-rc3build335 6,337 10/12/2015
2.0.0-rc3build334 6,322 10/10/2015
2.0.0-rc3build333 6,329 10/6/2015
2.0.0-rc3build332 6,330 10/6/2015
2.0.0-rc3build331 6,326 10/1/2015
2.0.0-rc3build330 6,322 10/1/2015
2.0.0-rc3build329 6,318 9/30/2015
2.0.0-rc3build328 6,390 9/26/2015
2.0.0-rc3build327 6,321 9/25/2015
2.0.0-rc3build326 6,340 9/25/2015
2.0.0-rc3build325 6,323 9/25/2015
2.0.0-rc3build324 6,364 9/11/2015
2.0.0-rc3build323 6,353 9/11/2015
2.0.0-rc3build322 6,364 9/11/2015
2.0.0-rc3build321 6,324 9/11/2015
2.0.0-rc3build320 6,321 9/11/2015
2.0.0-rc3build319 6,352 9/8/2015
2.0.0-rc3build318 6,344 9/6/2015
2.0.0-rc3build317 6,351 9/3/2015
2.0.0-rc3build316 6,351 9/2/2015
2.0.0-rc3build315 6,345 8/31/2015
2.0.0-rc3build314 6,333 9/8/2015
2.0.0-rc3build313 6,334 8/29/2015
2.0.0-rc3build312 6,362 8/23/2015
2.0.0-rc3build311 6,342 8/21/2015
2.0.0-rc3build310 6,350 8/18/2015
2.0.0-rc3build309 6,326 8/12/2015
2.0.0-rc3build308 6,331 8/6/2015
2.0.0-rc3build307 6,367 8/23/2015
2.0.0-rc3build306 6,334 8/6/2015
2.0.0-rc3build304 6,313 8/4/2015
2.0.0-rc3build303 6,308 8/6/2015
2.0.0-rc3build302 6,343 8/3/2015
2.0.0-rc3build301 6,377 7/31/2015
2.0.0-rc3build300 6,507 7/28/2015
2.0.0-rc3build299 6,321 7/28/2015
2.0.0-rc3build298 6,322 7/28/2015
2.0.0-rc3build297 6,311 7/31/2015
2.0.0-rc3build296 6,310 7/28/2015
2.0.0-rc2build297 6,324 7/26/2015
2.0.0-rc2build296 6,306 7/26/2015
2.0.0-rc2build295 6,327 7/24/2015
2.0.0-rc2build294 6,325 7/24/2015
2.0.0-rc2build293 6,327 7/26/2015
2.0.0-rc2build292 6,373 7/21/2015
2.0.0-rc2build291 6,309 7/24/2015
2.0.0-rc2build289 6,379 7/21/2015
2.0.0-rc1build371 6,317 1/11/2016
2.0.0-rc1build366 6,307 1/11/2016
2.0.0-rc1build288 6,360 7/4/2015
2.0.0-rc1build287 6,337 6/19/2015
2.0.0-rc1build286 6,497 6/8/2015
2.0.0-rc1build285 6,335 6/4/2015
2.0.0-rc1build284 6,325 6/3/2015
2.0.0-rc1build283 6,356 6/1/2015
2.0.0-rc1build282 6,331 5/29/2015
2.0.0-rc1build281 6,317 5/27/2015
2.0.0-rc1build280 6,312 5/27/2015
2.0.0-rc1build279 6,321 5/21/2015
2.0.0-rc1build278 6,334 5/16/2015
2.0.0-rc1build277 6,330 5/15/2015
2.0.0-rc1build276 6,315 5/21/2015
2.0.0-rc1build275 6,307 5/16/2015
2.0.0-rc1build274 6,384 5/15/2015
2.0.0-rc1build273 6,343 5/15/2015
2.0.0-rc1build272 6,329 5/14/2015
2.0.0-rc1build271 6,368 5/14/2015
2.0.0-rc1build270 6,323 5/13/2015
2.0.0-rc1build269 6,327 5/14/2015
2.0.0-rc1build268 6,336 5/12/2015
2.0.0-rc1build267 6,327 5/10/2015
2.0.0-rc1build266 6,326 5/7/2015
2.0.0-rc1build265 6,329 5/6/2015
2.0.0-rc1build264 6,400 5/5/2015
2.0.0-rc1build263 6,316 5/1/2015
2.0.0-rc1build262 6,338 4/30/2015
2.0.0-rc1build261 6,325 4/29/2015
2.0.0-rc1build260 6,393 4/28/2015
2.0.0-rc1build259 6,332 4/21/2015
2.0.0-rc1build258 6,328 4/29/2015
2.0.0-rc1build255 6,347 4/21/2015
2.0.0-preview256 6,354 4/15/2015
2.0.0-preview255 6,358 4/14/2015
2.0.0-preview254 6,352 4/14/2015
2.0.0-preview253 6,350 4/13/2015
2.0.0-preview252 6,341 4/10/2015
2.0.0-preview251 6,350 4/7/2015
2.0.0-preview250 6,352 4/6/2015
2.0.0-preview249 6,551 4/6/2015
2.0.0-preview248 6,351 4/7/2015
2.0.0-preview247 6,353 4/6/2015
2.0.0-preview246 6,348 4/6/2015
2.0.0-preview245 6,350 4/3/2015
2.0.0-preview244 6,337 4/3/2015
2.0.0-preview243 6,351 4/3/2015
2.0.0-preview242 6,363 4/2/2015
2.0.0-preview241 6,349 3/31/2015
2.0.0-preview240 6,356 3/31/2015
2.0.0-preview239 6,388 3/30/2015
2.0.0-preview238 6,345 3/30/2015
2.0.0-preview237 6,341 3/29/2015
2.0.0-preview236 6,352 3/28/2015
2.0.0-preview235 6,359 3/27/2015
2.0.0-preview234 6,347 3/27/2015
2.0.0-preview233 6,346 3/26/2015
2.0.0-preview232 6,339 3/26/2015
2.0.0-preview231 6,370 3/25/2015
2.0.0-preview230 6,364 3/25/2015
2.0.0-preview229 6,364 3/25/2015
2.0.0-preview228 6,354 3/23/2015
2.0.0-preview227 6,371 3/23/2015
2.0.0-preview226 6,345 3/19/2015
2.0.0-preview225 6,346 3/18/2015
2.0.0-preview224 6,338 3/18/2015
2.0.0-preview223 6,353 3/18/2015
2.0.0-preview222 6,350 3/17/2015
2.0.0-preview221 6,355 3/15/2015
2.0.0-preview220 6,344 3/14/2015
2.0.0-preview219 6,340 3/13/2015
2.0.0-preview218 6,354 3/11/2015
2.0.0-preview217 6,356 3/10/2015
2.0.0-preview216 6,390 3/10/2015
2.0.0-preview215 6,359 3/10/2015
2.0.0-preview214 6,359 3/10/2015
2.0.0-preview213 6,339 3/9/2015
2.0.0-preview212 6,337 3/6/2015
2.0.0-preview211 6,349 3/4/2015
2.0.0-preview210 6,343 3/4/2015
2.0.0-preview209 6,356 3/4/2015
2.0.0-preview208 6,344 3/3/2015
2.0.0-preview207 6,352 3/3/2015
2.0.0-preview206 6,359 3/3/2015
2.0.0-preview205 6,354 3/2/2015
2.0.0-preview204 6,357 3/2/2015
2.0.0-preview203 6,515 2/26/2015
2.0.0-preview202 6,355 2/25/2015
2.0.0-preview201 6,380 2/20/2015
2.0.0-preview200 6,479 2/20/2015
2.0.0-preview199 6,367 2/20/2015
2.0.0-preview198 6,359 2/19/2015
2.0.0-preview197 6,355 2/19/2015
2.0.0-preview196 6,358 2/19/2015
2.0.0-preview195 6,369 2/19/2015
2.0.0-preview194 6,406 2/18/2015
2.0.0-preview193 6,371 2/18/2015
2.0.0-preview192 6,435 2/17/2015
2.0.0-preview191 6,427 2/17/2015
2.0.0-preview190 6,453 2/17/2015
2.0.0-preview189 6,348 2/12/2015
2.0.0-preview188 6,367 2/11/2015
2.0.0-preview187 6,464 2/11/2015
2.0.0-preview186 6,502 2/11/2015
2.0.0-preview185 6,376 2/10/2015
2.0.0-preview184 6,359 2/10/2015
2.0.0-preview183 6,360 2/10/2015
2.0.0-preview182 6,391 2/9/2015
2.0.0-preview181 6,366 2/2/2015
2.0.0-preview180 6,367 2/2/2015
2.0.0-preview179 6,355 1/31/2015
2.0.0-preview178 6,355 1/30/2015
2.0.0-preview177 6,363 1/29/2015
2.0.0-preview176 6,410 1/24/2015
2.0.0-preview175 6,365 1/24/2015
2.0.0-preview174 6,429 1/23/2015
2.0.0-preview173 6,417 1/18/2015
2.0.0-preview172 6,353 1/19/2015
2.0.0-preview171 6,436 1/16/2015
2.0.0-preview170 6,363 1/16/2015
2.0.0-preview169 6,380 1/16/2015
2.0.0-preview168 6,363 1/16/2015
2.0.0-preview167 6,426 1/16/2015
2.0.0-preview166 6,359 1/15/2015
2.0.0-preview165 6,402 1/15/2015
2.0.0-preview164 6,366 1/15/2015
2.0.0-preview163 6,402 1/15/2015
2.0.0-preview162 6,405 1/14/2015
2.0.0-preview161 6,351 1/14/2015
2.0.0-preview160 6,350 1/14/2015
2.0.0-preview159 6,365 1/14/2015
2.0.0-preview158 6,372 1/14/2015
2.0.0-preview157 6,356 1/14/2015
2.0.0-preview156 6,363 1/13/2015
2.0.0-preview155 6,368 1/13/2015
2.0.0-preview154 6,434 1/12/2015
2.0.0-preview153 6,367 1/12/2015
2.0.0-preview152 6,367 1/9/2015
2.0.0-preview151 6,366 1/9/2015
2.0.0-preview150 6,366 1/8/2015
2.0.0-preview148 6,386 1/8/2015
2.0.0-preview147 6,365 1/3/2015
2.0.0-preview146 6,388 1/3/2015
2.0.0-preview145 6,425 12/30/2014
2.0.0-preview144 6,393 12/29/2014
2.0.0-preview143 6,414 12/29/2014
2.0.0-preview142 6,393 12/23/2014
2.0.0-preview141 6,364 12/23/2014
2.0.0-preview140 6,389 12/23/2014
2.0.0-preview139 6,445 12/20/2014
2.0.0-preview138 6,363 12/20/2014
2.0.0-preview137 6,371 12/20/2014
2.0.0-preview136 6,386 12/20/2014
2.0.0-preview135 6,355 12/20/2014
2.0.0-preview133 6,437 12/18/2014
2.0.0-preview132 6,400 12/15/2014
2.0.0-preview131 6,390 12/14/2014
2.0.0-preview130 6,362 12/12/2014
2.0.0-preview129 6,386 12/12/2014
2.0.0-preview128 6,368 12/11/2014
2.0.0-preview127 6,387 12/10/2014
2.0.0-preview126 6,385 12/10/2014
2.0.0-preview125 6,378 12/8/2014
2.0.0-preview124 6,392 12/8/2014
2.0.0-preview123 6,374 12/7/2014
2.0.0-preview119 6,487 11/24/2014
2.0.0-preview118 6,453 11/21/2014
2.0.0-preview116 6,782 11/13/2014
2.0.0-preview115 6,607 11/6/2014
2.0.0-preview114 6,808 11/6/2014
2.0.0-preview113 6,593 11/5/2014
2.0.0-preview112 6,592 11/5/2014
2.0.0-preview110 6,830 11/5/2014
2.0.0-preview109 6,843 11/4/2014
2.0.0-preview108 6,696 10/31/2014
2.0.0-preview107 6,916 10/31/2014
2.0.0-preview105 7,007 10/31/2014
2.0.0-preview104 6,368 10/29/2014
2.0.0-preview103 6,369 10/27/2014
2.0.0-preview102 6,383 10/27/2014
2.0.0-preview101 6,377 10/24/2014
2.0.0-beta258 6,347 4/21/2015
2.0.0-beta254 6,390 4/20/2015
1.4.1 9,501 10/9/2014
1.4.0 6,757 9/10/2014
1.3.1 6,545 8/18/2014
1.3.0 6,605 7/16/2014
1.2.2 6,636 7/2/2014
1.2.1 6,431 6/30/2014
1.2.0 6,820 1/9/2014
1.1.1 6,480 12/26/2013
1.1.0 6,417 12/26/2013
1.0.11 6,471 12/24/2013