DryIoc.dll 4.1.0-preview-03

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

This is a prerelease version of DryIoc.dll.
There is a newer version of this package available.
See the version list below for details.
Install-Package DryIoc.dll -Version 4.1.0-preview-03
dotnet add package DryIoc.dll --version 4.1.0-preview-03
<PackageReference Include="DryIoc.dll" 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.dll --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

Showing the top 8 GitHub repositories that depend on DryIoc.dll:

Repository Stars
PrismLibrary/Prism
Prism is a framework for building loosely coupled, maintainable, and testable XAML applications in WPF, Windows 10 UWP, and Xamarin Forms.
structuremap/structuremap
A Dependency Injection/Inversion of Control tool for .NET
digimezzo/dopamine-windows
Audio player which tries to make organizing and listening to music as simple and pretty as possible.
reactiveui/splat
Makes things cross-platform
danielpalme/IocPerformance
Performance comparison of .NET IoC containers
dadhi/DryIoc
DryIoc is fast, small, full-featured IoC Container for .NET
appget/appget
Free and open package manager for Windows.
DevTechProfile/CapFrameX
Frametime capture and analysis tool

Read more about the GitHub Usage information on our documentation.

Version History

Version Downloads Last updated
4.1.0 4,675 1/20/2020
4.1.0-preview-04 1,217 1/5/2020
4.1.0-preview-03 5,199 10/3/2019
4.1.0-preview-02 2,679 8/25/2019
4.1.0-preview-01 266 8/21/2019
4.0.7 131,911 9/4/2019
4.0.6 1,738 8/29/2019
4.0.5 137,496 6/8/2019
4.0.5-preview-01 4,329 6/7/2019
4.0.4 65,889 5/1/2019
4.0.3 6,400 4/10/2019
4.0.2 22,521 3/30/2019
4.0.1 13,963 3/28/2019
4.0.0 29,616 3/4/2019
4.0.0-preview-02 342 2/22/2019
4.0.0-preview-01 2,867 12/1/2018
3.1.0-preview-07 2,164 11/20/2018
3.1.0-preview-06 1,200 11/7/2018
3.1.0-preview-05 356 10/12/2018
3.1.0-preview-04 577 10/6/2018
3.1.0-preview-03 276 10/5/2018
3.1.0-preview-02 269 10/4/2018
3.1.0-preview-01 295 10/3/2018
3.0.2 298,250 7/11/2018
3.0.1 799 7/7/2018
3.0.0 1,107 6/24/2018
3.0.0-preview-12 596 6/6/2018
3.0.0-preview-11 1,589 3/17/2018
3.0.0-preview-10 455 3/13/2018
3.0.0-preview-09 497 2/21/2018
3.0.0-preview-08 410 2/12/2018
3.0.0-preview-07 465 2/9/2018
3.0.0-preview-06 393 2/8/2018
3.0.0-preview-05 388 2/5/2018
3.0.0-preview-04 405 2/1/2018
3.0.0-preview-03 1,289 12/3/2017
3.0.0-preview-02 586 11/14/2017
3.0.0-preview-01 932 10/1/2017
2.12.10 66,496 4/11/2018
2.12.8 20,560 3/13/2018
2.12.7 16,588 1/19/2018
2.12.6 63,876 12/21/2017
2.12.5 20,230 10/30/2017
2.12.4 7,246 10/17/2017
2.12.3 4,137 10/2/2017
2.12.2 16,834 9/17/2017
2.12.1 25,874 9/9/2017
2.12.0 1,794 9/1/2017
2.12.0-preview-01 525 8/29/2017
2.11.6 9,195 7/18/2017
2.11.5 1,966 7/12/2017
2.11.4 6,463 6/28/2017
2.11.3 5,232 6/1/2017
2.11.2 409 6/1/2017
2.11.1 642 5/31/2017
2.11.0 535 5/30/2017
2.11.0-preview-02 640 3/15/2017
2.11.0-preview-01 407 3/10/2017
2.10.7 6,665 5/3/2017
2.10.6 37,627 4/20/2017
2.10.4 3,149 3/28/2017
2.10.3 562 3/25/2017
2.10.2 4,382 3/14/2017
2.10.1 19,386 2/18/2017
2.10.0 7,075 2/1/2017
2.9.7 5,917 1/12/2017
2.9.6 922 12/30/2016
2.9.5 698 12/26/2016
2.9.4 1,805 12/10/2016
2.9.3 657 12/8/2016
2.9.2 635 12/3/2016
2.9.1 1,381 11/19/2016
2.9.0 956 11/17/2016
2.8.5 1,305 11/2/2016
2.8.4 665 10/28/2016
2.8.3 4,796 10/20/2016
2.8.2 712 10/20/2016
2.8.1 439 10/19/2016
2.8.0 437 10/18/2016
2.8.0-preview-01 407 10/13/2016
2.7.1 22,677 9/1/2016
2.7.0 3,517 8/19/2016
2.6.4 2,763 7/29/2016
2.6.3 2,666 7/9/2016
2.6.3-netcore-rc2 720 7/9/2016
2.6.2 2,494 6/13/2016
2.6.2-netcore-rc2 590 6/13/2016
2.6.1-netcore-rc2 398 6/10/2016
2.6.0 620 6/10/2016
2.5.1 541 6/7/2016
2.5.0 1,246 5/24/2016
2.4.3 1,450 5/7/2016
2.4.2 682 4/26/2016
2.4.1 2,487 4/16/2016
2.4.0 526 4/14/2016
2.3.0 1,739 3/30/2016
2.2.2 4,340 3/10/2016
2.2.1 468 3/8/2016
2.2.0 909 2/26/2016
2.1.3 1,165 1/17/2016
2.1.2 583 1/15/2016
2.1.1 723 1/4/2016
2.1.0 1,391 12/4/2015
2.0.2 708 12/1/2015
2.0.1 606 11/27/2015
2.0.0 1,901 11/19/2015
2.0.0-rc4build353 501 11/18/2015
2.0.0-rc4build352 467 11/17/2015
2.0.0-rc4build351 482 11/17/2015
2.0.0-rc4build350 519 11/17/2015
2.0.0-rc4build349 502 11/12/2015
2.0.0-rc4build348 479 11/12/2015
2.0.0-rc4build347 484 11/12/2015
2.0.0-rc4build346 509 11/12/2015
2.0.0-rc4build345 468 11/12/2015
2.0.0-rc4build344 485 11/7/2015
2.0.0-rc4build343 515 11/5/2015
2.0.0-rc4build342 804 11/1/2015
2.0.0-rc4build341 483 10/29/2015
2.0.0-rc4build340 498 11/12/2015
2.0.0-rc4build339 479 11/7/2015
2.0.0-rc4build338 492 11/5/2015
2.0.0-rc4build337 477 11/1/2015
2.0.0-rc4build336 491 10/29/2015
2.0.0-rc3build340 445 10/26/2015
2.0.0-rc3build339 442 10/26/2015
2.0.0-rc3build338 407 10/23/2015
2.0.0-rc3build337 478 10/20/2015
2.0.0-rc3build336 441 10/19/2015
2.0.0-rc3build335 535 10/12/2015
2.0.0-rc3build334 441 10/10/2015
2.0.0-rc3build333 467 10/6/2015
2.0.0-rc3build332 457 10/6/2015
2.0.0-rc3build331 474 10/1/2015
2.0.0-rc3build330 420 10/1/2015
2.0.0-rc3build329 426 9/30/2015
2.0.0-rc3build328 467 9/26/2015
2.0.0-rc3build327 443 9/25/2015
2.0.0-rc3build326 416 9/25/2015
2.0.0-rc3build325 439 9/25/2015
2.0.0-rc3build324 512 9/11/2015
2.0.0-rc3build323 484 9/11/2015
2.0.0-rc3build322 451 9/11/2015
2.0.0-rc3build321 439 9/11/2015
2.0.0-rc3build320 415 9/11/2015
2.0.0-rc3build319 460 9/8/2015
2.0.0-rc3build318 481 9/6/2015
2.0.0-rc3build317 461 9/3/2015
2.0.0-rc3build316 527 9/2/2015
2.0.0-rc3build315 462 8/31/2015
2.0.0-rc3build314 471 9/8/2015
2.0.0-rc3build313 431 8/29/2015
2.0.0-rc3build312 468 8/23/2015
2.0.0-rc3build311 461 8/21/2015
2.0.0-rc3build310 480 8/18/2015
2.0.0-rc3build309 466 8/12/2015
2.0.0-rc3build308 408 8/6/2015
2.0.0-rc3build307 438 8/23/2015
2.0.0-rc3build306 416 8/6/2015
2.0.0-rc3build304 480 8/4/2015
2.0.0-rc3build303 413 8/6/2015
2.0.0-rc3build302 422 8/3/2015
2.0.0-rc3build301 447 7/31/2015
2.0.0-rc3build300 543 7/28/2015
2.0.0-rc3build299 443 7/28/2015
2.0.0-rc3build298 420 7/28/2015
2.0.0-rc3build297 414 7/31/2015
2.0.0-rc2build297 450 7/26/2015
2.0.0-rc2build295 586 7/24/2015
2.0.0-rc2build294 452 7/24/2015
2.0.0-rc2build293 433 7/26/2015
2.0.0-rc2build292 445 7/21/2015
2.0.0-rc2build291 438 7/24/2015
2.0.0-rc2build289 430 7/21/2015
2.0.0-rc1build371 398 1/11/2016
2.0.0-rc1build366 398 1/11/2016
2.0.0-rc1build288 441 7/4/2015
2.0.0-rc1build287 427 6/19/2015
2.0.0-rc1build286 432 6/8/2015
2.0.0-rc1build285 423 6/4/2015
2.0.0-rc1build284 446 6/3/2015
2.0.0-rc1build283 594 6/1/2015
2.0.0-rc1build282 438 5/29/2015
2.0.0-rc1build281 424 5/27/2015
2.0.0-rc1build280 481 5/27/2015
2.0.0-rc1build279 458 5/21/2015
2.0.0-rc1build278 498 5/16/2015
2.0.0-rc1build277 492 5/15/2015
2.0.0-rc1build276 582 5/21/2015
2.0.0-rc1build275 419 5/16/2015
2.0.0-rc1build274 494 5/15/2015
2.0.0-rc1build273 430 5/15/2015
2.0.0-rc1build272 464 5/14/2015
2.0.0-rc1build271 431 5/14/2015
2.0.0-rc1build270 416 5/13/2015
2.0.0-rc1build269 437 5/14/2015
2.0.0-rc1build268 444 5/12/2015
2.0.0-rc1build267 449 5/10/2015
2.0.0-rc1build266 438 5/7/2015
2.0.0-rc1build265 433 5/6/2015
2.0.0-rc1build264 440 5/5/2015
2.0.0-rc1build263 438 5/1/2015
2.0.0-rc1build262 436 4/30/2015
2.0.0-rc1build261 411 4/29/2015
2.0.0-rc1build260 423 4/28/2015
2.0.0-rc1build259 441 4/21/2015
2.0.0-rc1build258 423 4/29/2015
2.0.0-rc1build255 426 4/21/2015
2.0.0-preview256 546 4/15/2015
2.0.0-preview255 459 4/14/2015
2.0.0-preview254 451 4/14/2015
2.0.0-preview253 489 4/13/2015
2.0.0-preview252 499 4/10/2015
2.0.0-preview251 540 4/7/2015
2.0.0-preview250 460 4/6/2015
2.0.0-preview249 499 4/6/2015
2.0.0-preview248 453 4/7/2015
2.0.0-preview247 467 4/6/2015
2.0.0-preview246 524 4/6/2015
2.0.0-preview245 456 4/3/2015
2.0.0-preview244 479 4/3/2015
2.0.0-preview243 448 4/3/2015
2.0.0-preview242 453 4/2/2015
2.0.0-preview241 447 3/31/2015
2.0.0-preview240 454 3/31/2015
2.0.0-preview239 446 3/30/2015
2.0.0-preview238 463 3/30/2015
2.0.0-preview237 453 3/29/2015
2.0.0-preview236 458 3/28/2015
2.0.0-preview235 500 3/27/2015
2.0.0-preview234 474 3/27/2015
2.0.0-preview233 469 3/26/2015
2.0.0-preview232 455 3/26/2015
2.0.0-preview231 476 3/25/2015
2.0.0-preview230 497 3/25/2015
2.0.0-preview229 455 3/25/2015
2.0.0-preview228 484 3/23/2015
2.0.0-preview227 460 3/23/2015
2.0.0-preview226 468 3/19/2015
2.0.0-preview225 483 3/18/2015
2.0.0-preview224 477 3/18/2015
2.0.0-preview223 488 3/18/2015
2.0.0-preview222 455 3/17/2015
2.0.0-preview221 463 3/15/2015
2.0.0-preview220 446 3/14/2015
2.0.0-preview219 448 3/13/2015
2.0.0-preview218 493 3/11/2015
2.0.0-preview217 447 3/10/2015
2.0.0-preview216 463 3/10/2015
2.0.0-preview215 503 3/10/2015
2.0.0-preview214 462 3/10/2015
2.0.0-preview213 460 3/9/2015
2.0.0-preview212 482 3/6/2015
2.0.0-preview211 457 3/4/2015
2.0.0-preview210 505 3/4/2015
2.0.0-preview209 451 3/4/2015
2.0.0-preview208 458 3/3/2015
2.0.0-preview207 442 3/3/2015
2.0.0-preview206 449 3/3/2015
2.0.0-preview205 449 3/2/2015
2.0.0-preview204 443 3/2/2015
2.0.0-preview203 468 2/26/2015
2.0.0-preview202 488 2/25/2015
2.0.0-preview201 459 2/20/2015
2.0.0-preview200 567 2/20/2015
2.0.0-preview199 464 2/20/2015
2.0.0-preview198 504 2/19/2015
2.0.0-preview197 448 2/19/2015
2.0.0-preview196 478 2/19/2015
2.0.0-preview195 464 2/19/2015
2.0.0-preview194 510 2/18/2015
2.0.0-preview193 570 2/18/2015
2.0.0-preview192 516 2/17/2015
2.0.0-preview191 566 2/17/2015
2.0.0-preview190 450 2/17/2015
2.0.0-preview189 489 2/12/2015
2.0.0-preview188 572 2/11/2015
2.0.0-preview187 579 2/11/2015
2.0.0-preview186 480 2/11/2015
2.0.0-preview185 477 2/10/2015
2.0.0-preview184 503 2/10/2015
2.0.0-preview183 550 2/10/2015
2.0.0-preview182 471 2/9/2015
2.0.0-preview181 506 2/2/2015
2.0.0-preview180 491 2/2/2015
2.0.0-preview179 456 1/31/2015
2.0.0-preview178 504 1/30/2015
2.0.0-preview177 513 1/29/2015
2.0.0-preview176 472 1/24/2015
2.0.0-preview175 538 1/24/2015
2.0.0-preview174 527 1/23/2015
2.0.0-preview173 513 1/18/2015
2.0.0-preview172 501 1/19/2015
2.0.0-preview171 499 1/16/2015
2.0.0-preview170 529 1/16/2015
2.0.0-preview169 475 1/16/2015
2.0.0-preview168 461 1/16/2015
2.0.0-preview167 471 1/16/2015
2.0.0-preview166 547 1/15/2015
2.0.0-preview165 547 1/15/2015
2.0.0-preview164 489 1/15/2015
2.0.0-preview163 480 1/15/2015
2.0.0-preview162 498 1/14/2015
2.0.0-preview161 531 1/14/2015
2.0.0-preview160 471 1/14/2015
2.0.0-preview159 541 1/14/2015
2.0.0-preview158 487 1/14/2015
2.0.0-preview157 507 1/14/2015
2.0.0-preview156 482 1/13/2015
2.0.0-preview155 520 1/13/2015
2.0.0-preview154 493 1/12/2015
2.0.0-preview153 501 1/12/2015
2.0.0-preview152 452 1/9/2015
2.0.0-preview151 469 1/9/2015
2.0.0-preview150 466 1/8/2015
2.0.0-preview148 464 1/8/2015
2.0.0-preview147 487 1/3/2015
2.0.0-preview146 478 1/3/2015
2.0.0-preview145 508 12/30/2014
2.0.0-preview144 518 12/29/2014
2.0.0-preview143 534 12/29/2014
2.0.0-preview142 480 12/23/2014
2.0.0-preview141 493 12/23/2014
2.0.0-preview140 492 12/23/2014
2.0.0-preview139 485 12/20/2014
2.0.0-preview138 469 12/20/2014
2.0.0-preview137 468 12/20/2014
2.0.0-preview136 466 12/20/2014
2.0.0-preview135 465 12/20/2014
2.0.0-preview133 461 12/18/2014
2.0.0-preview132 476 12/15/2014
2.0.0-preview131 471 12/14/2014
2.0.0-preview130 542 12/12/2014
2.0.0-preview129 473 12/12/2014
2.0.0-preview128 528 12/11/2014
2.0.0-preview127 485 12/10/2014
2.0.0-preview126 480 12/10/2014
2.0.0-preview125 474 12/8/2014
2.0.0-preview124 475 12/8/2014
2.0.0-preview123 522 12/7/2014
2.0.0-preview119 537 11/24/2014
2.0.0-preview118 591 11/21/2014
2.0.0-preview116 1,060 11/13/2014
2.0.0-preview115 688 11/6/2014
2.0.0-preview114 896 11/6/2014
2.0.0-preview113 684 11/5/2014
2.0.0-preview112 678 11/5/2014
2.0.0-preview110 944 11/5/2014
2.0.0-preview109 1,013 11/4/2014
2.0.0-preview108 833 10/31/2014
2.0.0-preview107 1,089 10/31/2014
2.0.0-preview105 1,080 10/31/2014
2.0.0-preview104 477 10/29/2014
2.0.0-preview103 475 10/27/2014
2.0.0-preview102 525 10/27/2014
2.0.0-preview101 487 10/24/2014
2.0.0-beta258 444 4/21/2015
2.0.0-beta254 497 4/20/2015
1.4.1 2,039 10/9/2014
1.4.0 780 9/10/2014
1.3.1 615 8/18/2014
1.3.0 622 7/16/2014
1.2.2 625 7/2/2014
1.2.1 526 6/30/2014
1.2.0 712 1/9/2014
1.1.1 596 12/26/2013
1.1.0 545 12/26/2013
1.0.11 576 12/24/2013