DryIoc 4.0.5

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

Requires NuGet 3.3.0 or higher.

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

Release Notes

## 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.0.5 3,425 6/8/2019
4.0.5-preview-01 85 6/7/2019
4.0.4 1,489 5/1/2019
4.0.3 617 4/10/2019
4.0.2 374 3/30/2019
4.0.1 110 3/28/2019
4.0.0 784 3/4/2019
4.0.0-preview-02 136 2/22/2019
4.0.0-preview-01 1,918 12/1/2018
3.1.0-preview-07 181 11/20/2018
3.0.2 11,395 7/11/2018
3.0.1 266 7/7/2018
3.0.0 588 6/24/2018
3.0.0-preview-12 259 6/6/2018
3.0.0-preview-11 493 3/17/2018
3.0.0-preview-10 266 3/13/2018
3.0.0-preview-09 1,732 2/21/2018
3.0.0-preview-08 254 2/12/2018
3.0.0-preview-07 271 2/9/2018
3.0.0-preview-06 267 2/8/2018
3.0.0-preview-05 260 2/5/2018
3.0.0-preview-04 264 2/1/2018
3.0.0-preview-03 360 12/3/2017
3.0.0-preview-02 743 11/14/2017
3.0.0-preview-01 292 10/1/2017
2.12.10 6,261 4/11/2018
2.12.9 483 4/7/2018
2.12.8 1,325 3/13/2018
2.12.7 3,445 1/19/2018
2.12.6 1,228 12/21/2017
2.12.5 5,692 10/30/2017
2.12.4 519 10/17/2017
2.12.3 2,012 10/2/2017
2.12.2 902 9/17/2017
2.12.1 426 9/9/2017
2.12.0 1,478 9/1/2017
2.12.0-preview-01 245 8/29/2017
2.11.6 3,999 7/18/2017
2.11.5 408 7/12/2017
2.11.4 683 6/28/2017
2.11.3 825 6/1/2017
2.11.2 279 6/1/2017
2.11.1 343 5/31/2017
2.11.0 297 5/30/2017
2.11.0-preview-02 463 3/15/2017
2.11.0-preview-01 276 3/10/2017
2.10.7 2,220 5/3/2017
2.10.6 33,422 4/20/2017
2.10.5 682 4/4/2017
2.10.4 453 3/28/2017
2.10.3 447 3/25/2017
2.10.2 3,697 3/14/2017
2.10.1 1,812 2/18/2017
2.10.0 5,157 2/1/2017
2.9.7 1,653 1/12/2017
2.9.6 1,013 12/30/2016
2.9.5 367 12/26/2016
2.9.4 793 12/10/2016
2.9.3 443 12/8/2016
2.9.2 477 12/3/2016
2.9.1 1,732 11/19/2016
2.9.0 365 11/17/2016
2.8.5 948 11/2/2016
2.8.4 477 10/28/2016
2.8.3 5,696 10/20/2016
2.8.2 562 10/20/2016
2.8.1 351 10/19/2016
2.8.0 318 10/18/2016
2.8.0-preview-01 303 10/13/2016
2.7.1 1,412 9/1/2016
2.7.0 792 8/19/2016
2.6.4 1,001 7/29/2016
2.6.3 581 7/9/2016
2.6.2 3,008 6/13/2016
2.6.0 432 6/10/2016
2.5.1 1,013 6/7/2016
2.5.0 2,061 5/24/2016
2.4.3 836 5/7/2016
2.4.2 726 4/26/2016
2.4.1 475 4/16/2016
2.4.0 602 4/14/2016
2.3.0 1,194 3/30/2016
2.2.2 1,942 3/10/2016
2.2.1 377 3/8/2016
2.2.0 677 2/26/2016
2.1.3 1,686 1/17/2016
2.1.2 421 1/15/2016
2.1.1 672 1/4/2016
2.1.0 818 12/4/2015
2.0.2 620 12/1/2015
2.0.1 388 11/27/2015
2.0.0 1,242 11/19/2015
2.0.0-rc4build353 345 11/18/2015
2.0.0-rc4build352 314 11/17/2015
2.0.0-rc4build351 362 11/17/2015
2.0.0-rc4build350 330 11/17/2015
2.0.0-rc4build349 356 11/12/2015
2.0.0-rc4build348 336 11/12/2015
2.0.0-rc4build347 332 11/12/2015
2.0.0-rc4build346 306 11/12/2015
2.0.0-rc4build345 308 11/12/2015
2.0.0-rc4build344 340 11/7/2015
2.0.0-rc4build343 338 11/5/2015
2.0.0-rc4build342 400 11/1/2015
2.0.0-rc4build341 335 10/29/2015
2.0.0-rc4build340 315 11/12/2015
2.0.0-rc4build339 319 11/7/2015
2.0.0-rc4build338 317 11/5/2015
2.0.0-rc4build337 312 11/1/2015
2.0.0-rc4build336 322 10/29/2015
2.0.0-rc3build340 321 10/26/2015
2.0.0-rc3build339 324 10/26/2015
2.0.0-rc3build338 335 10/23/2015
2.0.0-rc3build337 340 10/20/2015
2.0.0-rc3build336 357 10/19/2015
2.0.0-rc3build335 339 10/12/2015
2.0.0-rc3build334 325 10/10/2015
2.0.0-rc3build333 332 10/6/2015
2.0.0-rc3build332 333 10/6/2015
2.0.0-rc3build331 328 10/1/2015
2.0.0-rc3build330 325 10/1/2015
2.0.0-rc3build329 321 9/30/2015
2.0.0-rc3build328 393 9/26/2015
2.0.0-rc3build327 323 9/25/2015
2.0.0-rc3build326 342 9/25/2015
2.0.0-rc3build325 329 9/25/2015
2.0.0-rc3build324 369 9/11/2015
2.0.0-rc3build323 360 9/11/2015
2.0.0-rc3build322 370 9/11/2015
2.0.0-rc3build321 329 9/11/2015
2.0.0-rc3build320 327 9/11/2015
2.0.0-rc3build319 353 9/8/2015
2.0.0-rc3build318 347 9/6/2015
2.0.0-rc3build317 354 9/3/2015
2.0.0-rc3build316 355 9/2/2015
2.0.0-rc3build315 352 8/31/2015
2.0.0-rc3build314 340 9/8/2015
2.0.0-rc3build313 338 8/29/2015
2.0.0-rc3build312 364 8/23/2015
2.0.0-rc3build311 347 8/21/2015
2.0.0-rc3build310 355 8/18/2015
2.0.0-rc3build309 329 8/12/2015
2.0.0-rc3build308 334 8/6/2015
2.0.0-rc3build307 374 8/23/2015
2.0.0-rc3build306 335 8/6/2015
2.0.0-rc3build304 316 8/4/2015
2.0.0-rc3build303 313 8/6/2015
2.0.0-rc3build302 348 8/3/2015
2.0.0-rc3build301 385 7/31/2015
2.0.0-rc3build300 514 7/28/2015
2.0.0-rc3build299 321 7/28/2015
2.0.0-rc3build298 327 7/28/2015
2.0.0-rc3build297 318 7/31/2015
2.0.0-rc3build296 315 7/28/2015
2.0.0-rc2build297 329 7/26/2015
2.0.0-rc2build296 313 7/26/2015
2.0.0-rc2build295 331 7/24/2015
2.0.0-rc2build294 330 7/24/2015
2.0.0-rc2build293 329 7/26/2015
2.0.0-rc2build292 377 7/21/2015
2.0.0-rc2build291 315 7/24/2015
2.0.0-rc2build289 382 7/21/2015
2.0.0-rc1build371 320 1/11/2016
2.0.0-rc1build366 311 1/11/2016
2.0.0-rc1build288 360 7/4/2015
2.0.0-rc1build287 338 6/19/2015
2.0.0-rc1build286 501 6/8/2015
2.0.0-rc1build285 337 6/4/2015
2.0.0-rc1build284 329 6/3/2015
2.0.0-rc1build283 358 6/1/2015
2.0.0-rc1build282 335 5/29/2015
2.0.0-rc1build281 319 5/27/2015
2.0.0-rc1build280 314 5/27/2015
2.0.0-rc1build279 327 5/21/2015
2.0.0-rc1build278 339 5/16/2015
2.0.0-rc1build277 334 5/15/2015
2.0.0-rc1build276 321 5/21/2015
2.0.0-rc1build275 313 5/16/2015
2.0.0-rc1build274 386 5/15/2015
2.0.0-rc1build273 346 5/15/2015
2.0.0-rc1build272 335 5/14/2015
2.0.0-rc1build271 371 5/14/2015
2.0.0-rc1build270 328 5/13/2015
2.0.0-rc1build269 334 5/14/2015
2.0.0-rc1build268 340 5/12/2015
2.0.0-rc1build267 333 5/10/2015
2.0.0-rc1build266 330 5/7/2015
2.0.0-rc1build265 335 5/6/2015
2.0.0-rc1build264 404 5/5/2015
2.0.0-rc1build263 322 5/1/2015
2.0.0-rc1build262 341 4/30/2015
2.0.0-rc1build261 328 4/29/2015
2.0.0-rc1build260 397 4/28/2015
2.0.0-rc1build259 335 4/21/2015
2.0.0-rc1build258 332 4/29/2015
2.0.0-rc1build255 352 4/21/2015
2.0.0-preview256 358 4/15/2015
2.0.0-preview255 357 4/14/2015
2.0.0-preview254 353 4/14/2015
2.0.0-preview253 348 4/13/2015
2.0.0-preview252 340 4/10/2015
2.0.0-preview251 350 4/7/2015
2.0.0-preview250 350 4/6/2015
2.0.0-preview249 545 4/6/2015
2.0.0-preview248 352 4/7/2015
2.0.0-preview247 352 4/6/2015
2.0.0-preview246 348 4/6/2015
2.0.0-preview245 348 4/3/2015
2.0.0-preview244 337 4/3/2015
2.0.0-preview243 351 4/3/2015
2.0.0-preview242 362 4/2/2015
2.0.0-preview241 347 3/31/2015
2.0.0-preview240 355 3/31/2015
2.0.0-preview239 385 3/30/2015
2.0.0-preview238 343 3/30/2015
2.0.0-preview237 339 3/29/2015
2.0.0-preview236 351 3/28/2015
2.0.0-preview235 358 3/27/2015
2.0.0-preview234 345 3/27/2015
2.0.0-preview233 345 3/26/2015
2.0.0-preview232 340 3/26/2015
2.0.0-preview231 368 3/25/2015
2.0.0-preview230 361 3/25/2015
2.0.0-preview229 361 3/25/2015
2.0.0-preview228 352 3/23/2015
2.0.0-preview227 371 3/23/2015
2.0.0-preview226 345 3/19/2015
2.0.0-preview225 347 3/18/2015
2.0.0-preview224 337 3/18/2015
2.0.0-preview223 352 3/18/2015
2.0.0-preview222 349 3/17/2015
2.0.0-preview221 353 3/15/2015
2.0.0-preview220 343 3/14/2015
2.0.0-preview219 340 3/13/2015
2.0.0-preview218 354 3/11/2015
2.0.0-preview217 353 3/10/2015
2.0.0-preview216 391 3/10/2015
2.0.0-preview215 357 3/10/2015
2.0.0-preview214 358 3/10/2015
2.0.0-preview213 339 3/9/2015
2.0.0-preview212 336 3/6/2015
2.0.0-preview211 349 3/4/2015
2.0.0-preview210 341 3/4/2015
2.0.0-preview209 352 3/4/2015
2.0.0-preview208 343 3/3/2015
2.0.0-preview207 349 3/3/2015
2.0.0-preview206 358 3/3/2015
2.0.0-preview205 352 3/2/2015
2.0.0-preview204 357 3/2/2015
2.0.0-preview203 513 2/26/2015
2.0.0-preview202 355 2/25/2015
2.0.0-preview201 378 2/20/2015
2.0.0-preview200 477 2/20/2015
2.0.0-preview199 369 2/20/2015
2.0.0-preview198 358 2/19/2015
2.0.0-preview197 354 2/19/2015
2.0.0-preview196 358 2/19/2015
2.0.0-preview195 368 2/19/2015
2.0.0-preview194 404 2/18/2015
2.0.0-preview193 369 2/18/2015
2.0.0-preview192 435 2/17/2015
2.0.0-preview191 426 2/17/2015
2.0.0-preview190 451 2/17/2015
2.0.0-preview189 350 2/12/2015
2.0.0-preview188 365 2/11/2015
2.0.0-preview187 462 2/11/2015
2.0.0-preview186 503 2/11/2015
2.0.0-preview185 378 2/10/2015
2.0.0-preview184 362 2/10/2015
2.0.0-preview183 362 2/10/2015
2.0.0-preview182 389 2/9/2015
2.0.0-preview181 367 2/2/2015
2.0.0-preview180 366 2/2/2015
2.0.0-preview179 356 1/31/2015
2.0.0-preview178 355 1/30/2015
2.0.0-preview177 362 1/29/2015
2.0.0-preview176 408 1/24/2015
2.0.0-preview175 364 1/24/2015
2.0.0-preview174 430 1/23/2015
2.0.0-preview173 416 1/18/2015
2.0.0-preview172 353 1/19/2015
2.0.0-preview171 437 1/16/2015
2.0.0-preview170 362 1/16/2015
2.0.0-preview169 379 1/16/2015
2.0.0-preview168 362 1/16/2015
2.0.0-preview167 426 1/16/2015
2.0.0-preview166 359 1/15/2015
2.0.0-preview165 401 1/15/2015
2.0.0-preview164 364 1/15/2015
2.0.0-preview163 400 1/15/2015
2.0.0-preview162 406 1/14/2015
2.0.0-preview161 351 1/14/2015
2.0.0-preview160 351 1/14/2015
2.0.0-preview159 364 1/14/2015
2.0.0-preview158 371 1/14/2015
2.0.0-preview157 356 1/14/2015
2.0.0-preview156 362 1/13/2015
2.0.0-preview155 368 1/13/2015
2.0.0-preview154 429 1/12/2015
2.0.0-preview153 362 1/12/2015
2.0.0-preview152 367 1/9/2015
2.0.0-preview151 365 1/9/2015
2.0.0-preview150 369 1/8/2015
2.0.0-preview148 386 1/8/2015
2.0.0-preview147 366 1/3/2015
2.0.0-preview146 387 1/3/2015
2.0.0-preview145 425 12/30/2014
2.0.0-preview144 392 12/29/2014
2.0.0-preview143 413 12/29/2014
2.0.0-preview142 392 12/23/2014
2.0.0-preview141 363 12/23/2014
2.0.0-preview140 389 12/23/2014
2.0.0-preview139 443 12/20/2014
2.0.0-preview138 362 12/20/2014
2.0.0-preview137 369 12/20/2014
2.0.0-preview136 384 12/20/2014
2.0.0-preview135 356 12/20/2014
2.0.0-preview133 434 12/18/2014
2.0.0-preview132 398 12/15/2014
2.0.0-preview131 389 12/14/2014
2.0.0-preview130 360 12/12/2014
2.0.0-preview129 386 12/12/2014
2.0.0-preview128 367 12/11/2014
2.0.0-preview127 383 12/10/2014
2.0.0-preview126 383 12/10/2014
2.0.0-preview125 374 12/8/2014
2.0.0-preview124 389 12/8/2014
2.0.0-preview123 373 12/7/2014
2.0.0-preview119 485 11/24/2014
2.0.0-preview118 454 11/21/2014
2.0.0-preview116 781 11/13/2014
2.0.0-preview115 606 11/6/2014
2.0.0-preview114 807 11/6/2014
2.0.0-preview113 593 11/5/2014
2.0.0-preview112 593 11/5/2014
2.0.0-preview110 830 11/5/2014
2.0.0-preview109 842 11/4/2014
2.0.0-preview108 694 10/31/2014
2.0.0-preview107 913 10/31/2014
2.0.0-preview105 1,005 10/31/2014
2.0.0-preview104 369 10/29/2014
2.0.0-preview103 367 10/27/2014
2.0.0-preview102 382 10/27/2014
2.0.0-preview101 372 10/24/2014
2.0.0-beta258 353 4/21/2015
2.0.0-beta254 394 4/20/2015
1.4.1 3,470 10/9/2014
1.4.0 754 9/10/2014
1.3.1 544 8/18/2014
1.3.0 602 7/16/2014
1.2.2 633 7/2/2014
1.2.1 428 6/30/2014
1.2.0 806 1/9/2014
1.1.1 474 12/26/2013
1.1.0 411 12/26/2013
1.0.11 463 12/24/2013