Code Quality Rank: L4
Programming language: - - -
License: Apache License 2.0
Tags: Windows8     DI     IOC     Wp8     WinRT     Azure     Xamarin     Unity     Unity3     Unity35     EntLib     EntLib6     Container     Dependency     Injection     Inversion     Control     LOB     Win8     NetCore     WindowsStoreApps     WindowsStore     WindowsPhone     WindowsPhone8     MonoTouch     MonoAndroid     OSS    
Latest version: v5.11.6.966

Unity alternatives and similar packages

Based on the "IoC" category.
Alternatively, view Unity alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of Unity or a related project?

Add another 'IoC' Package



The Unity Container (Unity) is a full featured, extensible dependency injection container. It facilitates building loosely coupled applications and provides developers with the following advantages:

  • Simplified object creation, especially for hierarchical object structures and dependencies
  • Abstraction of requirements; this allows developers to specify dependencies at run time or in configuration and simplify management of crosscutting concerns
  • Increased flexibility by deferring component configuration to the container
  • Service location capability; this allows clients to store or cache the container
  • Instance and type interception
  • Registration by convention


Install Unity with the following command:

Install-Package Unity

Unity 5.x loosely follows Semantic Versioning — minor releases may introduce breaking changes. Floating version references should lock in the minor version in addition to the major version:

<PackageReference Include="Unity.Container" Version="5.x.*" />


The documentation is a work in progress. Some info is available here but more is coming... Feel free to open issues in Documentation project with all the questions you would like to be covered or questions you might have.

New Features

Suggest new features or vote for the proposals you like, ADD your comments:

Feature Requests

Packages & Status

Unity library consists of multiple packages. For information about each package please follow the links

Package License Version Downloads
Unity (Composite) License NuGet NuGet
Unity.Abstractions License NuGet NuGet
Unity.Container License NuGet NuGet
Unity.Configuration License NuGet NuGet
Unity.Interception License NuGet NuGet
Unity.Interception.Configuration License NuGet NuGet
Unity.RegistrationByConvention License NuGet NuGet
Unity.log4net License NuGet NuGet
Unity.NLog License NuGet NuGet
Unity.Microsoft.Logging License NuGet NuGet
Unity.Microsoft.DependencyInjection License NuGet NuGet
Unity.AspNet.WebApi License NuGet NuGet
Unity.Mvc License NuGet NuGet
Unity.WCF License NuGet NuGet
Unity.ServiceLocation License NuGet NuGet
CommonServiceLocator License NuGet NuGet

Code of Conduct

This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community. For more information, see the .NET Foundation Code of Conduct


See the Contributing guide for more information.

.NET Foundation

Unity Container is a .NET Foundation project.

*Note that all licence references and agreements mentioned in the Unity README section above are relevant to that project's source code only.