Microsoft.Extensions.DependencyInjection 9.0.1

About

Supports the dependency injection (DI) software design pattern which is a technique for achieving Inversion of Control (IoC) between classes and their dependencies.

Key Features

Provides an implementation of the DI interfaces found in the Microsoft.Extensions.DependencyInjection.Abstractions package.

How to Use

ServiceCollection services = new ();
services.AddSingleton<IMessageWriter, MessageWriter>();
using ServiceProvider provider = services.BuildServiceProvider();

// The code below, following the IoC pattern, is typically only aware of the IMessageWriter interface, not the implementation.
IMessageWriter messageWriter = provider.GetService<IMessageWriter>()!;
messageWriter.Write("Hello");

public interface IMessageWriter
{
    void Write(string message);
}

internal class MessageWriter : IMessageWriter
{
    public void Write(string message)
    {
        Console.WriteLine($"MessageWriter.Write(message: \"{message}\")");
    }
}

Main Types

The main types provided by this library are:

  • Microsoft.Extensions.DependencyInjection.DefaultServiceProviderFactory
  • Microsoft.Extensions.DependencyInjection.ServiceCollectionContainerBuilderExtensions
  • Microsoft.Extensions.DependencyInjection.ServiceProvider

Additional Documentation

  • Microsoft.Extensions.DependencyInjection.Abstractions
  • Microsoft.Extensions.Hosting
  • Microsoft.Extensions.Options

Feedback & Contributing

Microsoft.Extensions.DependencyInjection is released as open source under the MIT license. Bug reports and contributions are welcome at the GitHub repository.

Showing the top 20 packages that depend on Microsoft.Extensions.DependencyInjection.

Packages Downloads
Microsoft.AspNetCore.Mvc.Core
ASP.NET Core MVC core components. Contains common action result types, attribute routing, application model conventions, API explorer, application parts, filters, formatters, model binding, and more. Commonly used types: Microsoft.AspNetCore.Mvc.AreaAttribute Microsoft.AspNetCore.Mvc.BindAttribute Microsoft.AspNetCore.Mvc.ControllerBase Microsoft.AspNetCore.Mvc.FromBodyAttribute Microsoft.AspNetCore.Mvc.FromFormAttribute Microsoft.AspNetCore.Mvc.RequireHttpsAttribute Microsoft.AspNetCore.Mvc.RouteAttribute This package was built from the source code at https://github.com/aspnet/AspNetCore/tree/33c2d01092d9a1b7a583fe99a50b15686e2b7de9
95
Microsoft.AspNetCore.Hosting
ASP.NET Core hosting infrastructure and startup logic for web applications. This package was built from the source code at https://github.com/aspnet/AspNetCore/tree/be0a4a7f4cf06cbd6ec714bd1d9afee6bdb040a8
95
Microsoft.AspNetCore.Mvc
ASP.NET Core MVC is a web framework that gives you a powerful, patterns-based way to build dynamic websites and web APIs. ASP.NET Core MVC enables a clean separation of concerns and gives you full control over markup. This package was built from the source code at https://github.com/aspnet/Mvc/tree/a6199bbfbab05583f987bae322fb04566841aaea
85
Microsoft.AspNetCore.Hosting
ASP.NET Core hosting infrastructure and startup logic for web applications.
77
Microsoft.EntityFrameworkCore
Entity Framework Core is a modern object-database mapper for .NET. It supports LINQ queries, change tracking, updates, and schema migrations. EF Core works with SQL Server, Azure SQL Database, SQLite, Azure Cosmos DB, MySQL, PostgreSQL, and other databases through a provider plugin API. Commonly Used Types: Microsoft.EntityFrameworkCore.DbContext Microsoft.EntityFrameworkCore.DbSet
76
Microsoft.AspNetCore.Mvc
ASP.NET Core MVC is a web framework that gives you a powerful, patterns-based way to build dynamic websites and web APIs. ASP.NET Core MVC enables a clean separation of concerns and gives you full control over markup.
75
Microsoft.AspNetCore.Mvc.Core
ASP.NET Core MVC core components. Contains common action result types, attribute routing, application model conventions, API explorer, application parts, filters, formatters, model binding, and more. Commonly used types: Microsoft.AspNetCore.Mvc.AreaAttribute Microsoft.AspNetCore.Mvc.BindAttribute Microsoft.AspNetCore.Mvc.ControllerBase Microsoft.AspNetCore.Mvc.FromBodyAttribute Microsoft.AspNetCore.Mvc.FromFormAttribute Microsoft.AspNetCore.Mvc.RequireHttpsAttribute Microsoft.AspNetCore.Mvc.RouteAttribute
73
Microsoft.AspNetCore.Mvc.Localization
ASP.NET Core MVC features that enable globalization and localization of applications. Commonly used types: Microsoft.AspNetCore.Mvc.Localization.IHtmlLocalizer<TResource> Microsoft.AspNetCore.Mvc.Localization.IViewLocalizer This package was built from the source code at https://github.com/aspnet/Mvc/tree/a6199bbfbab05583f987bae322fb04566841aaea
72
Microsoft.AspNetCore.Mvc.Localization
ASP.NET Core MVC features that enable globalization and localization of applications. Commonly used types: Microsoft.AspNetCore.Mvc.Localization.IHtmlLocalizer<TResource> Microsoft.AspNetCore.Mvc.Localization.IViewLocalizer
71
Microsoft.AspNetCore.Mvc.Core
ASP.NET Core MVC core components. Contains common action result types, attribute routing, application model conventions, API explorer, application parts, filters, formatters, model binding, and more. Commonly used types: Microsoft.AspNetCore.Mvc.AreaAttribute Microsoft.AspNetCore.Mvc.BindAttribute Microsoft.AspNetCore.Mvc.ControllerBase Microsoft.AspNetCore.Mvc.FromBodyAttribute Microsoft.AspNetCore.Mvc.FromFormAttribute Microsoft.AspNetCore.Mvc.RequireHttpsAttribute Microsoft.AspNetCore.Mvc.RouteAttribute
70
Microsoft.AspNetCore.Mvc
ASP.NET Core MVC is a web framework that gives you a powerful, patterns-based way to build dynamic websites and web APIs. ASP.NET Core MVC enables a clean separation of concerns and gives you full control over markup.
69
Microsoft.AspNetCore.Mvc
ASP.NET Core MVC is a web framework that gives you a powerful, patterns-based way to build dynamic websites and web APIs. ASP.NET Core MVC enables a clean separation of concerns and gives you full control over markup.
68
Microsoft.Extensions.Logging
Logging infrastructure default implementation for Microsoft.Extensions.Logging.
67
Microsoft.AspNetCore.Mvc
ASP.NET Core MVC is a web framework that gives you a powerful, patterns-based way to build dynamic websites and web APIs. ASP.NET Core MVC enables a clean separation of concerns and gives you full control over markup.
66
Microsoft.AspNetCore.Mvc
ASP.NET Core MVC is a web framework that gives you a powerful, patterns-based way to build dynamic websites and web APIs. ASP.NET Core MVC enables a clean separation of concerns and gives you full control over markup. This package was built from the source at: https://github.com/aspnet/Mvc/tree/b9793f0a1d9a75940c50e31e956d09397a5d1876
65
Microsoft.AspNetCore.Mvc.Core
ASP.NET Core MVC core components. Contains common action result types, attribute routing, application model conventions, API explorer, application parts, filters, formatters, model binding, and more. Commonly used types: Microsoft.AspNetCore.Mvc.AreaAttribute Microsoft.AspNetCore.Mvc.BindAttribute Microsoft.AspNetCore.Mvc.ControllerBase Microsoft.AspNetCore.Mvc.FromBodyAttribute Microsoft.AspNetCore.Mvc.FromFormAttribute Microsoft.AspNetCore.Mvc.RequireHttpsAttribute Microsoft.AspNetCore.Mvc.RouteAttribute This package was built from the source code at https://github.com/aspnet/AspNetCore/tree/522705f9a27b99ca4ad261f2e89fe51a77b2338e
65
Microsoft.EntityFrameworkCore
Entity Framework Core is a modern object-database mapper for .NET. It supports LINQ queries, change tracking, updates, and schema migrations. EF Core works with SQL Server, Azure SQL Database, SQLite, Azure Cosmos DB, MySQL, PostgreSQL, and other databases through a provider plugin API. Commonly Used Types: Microsoft.EntityFrameworkCore.DbContext Microsoft.EntityFrameworkCore.DbSet
65
Microsoft.AspNetCore.Mvc.Localization
ASP.NET Core MVC features that enable globalization and localization of applications. Commonly used types: Microsoft.AspNetCore.Mvc.Localization.IHtmlLocalizer<TResource> Microsoft.AspNetCore.Mvc.Localization.IViewLocalizer
65
Microsoft.EntityFrameworkCore
Entity Framework Core is a lightweight and extensible version of the popular Entity Framework data access technology. Commonly Used Types: Microsoft.EntityFrameworkCore.DbContext Microsoft.EntityFrameworkCore.DbSet
65
Microsoft.AspNetCore.Mvc
ASP.NET Core MVC is a web framework that gives you a powerful, patterns-based way to build dynamic websites and web APIs. ASP.NET Core MVC enables a clean separation of concerns and gives you full control over markup.
65

Version Downloads Last updated
9.0.1 3 1/22/2025
9.0.0 12 11/13/2024
9.0.0-rc.2.24473.5 22 10/11/2024
9.0.0-rc.1.24431.7 15 9/14/2024
9.0.0-preview.7.24405.7 23 8/15/2024
9.0.0-preview.6.24327.7 20 7/11/2024
9.0.0-preview.5.24306.7 18 6/15/2024
9.0.0-preview.4.24266.19 19 5/29/2024
9.0.0-preview.3.24172.9 23 4/22/2024
9.0.0-preview.2.24128.5 23 3/14/2024
9.0.0-preview.1.24080.9 21 2/27/2024
8.0.1 12 10/19/2024
8.0.0 31 11/16/2023
8.0.0-rc.2.23479.6 38 10/18/2023
8.0.0-rc.1.23419.4 31 9/20/2023
8.0.0-preview.7.23375.6 38 8/22/2023
8.0.0-preview.6.23329.7 41 8/2/2023
8.0.0-preview.5.23280.8 45 8/3/2023
8.0.0-preview.4.23259.5 44 5/27/2023
8.0.0-preview.3.23174.8 32 5/14/2023
8.0.0-preview.2.23128.3 42 5/17/2023
8.0.0-preview.1.23110.8 46 2/23/2023
7.0.0 33 12/1/2022
7.0.0-rc.2.22472.3 45 11/4/2022
7.0.0-rc.1.22426.10 38 9/16/2022
7.0.0-preview.7.22375.6 54 9/15/2022
7.0.0-preview.6.22324.4 36 9/17/2022
7.0.0-preview.5.22301.12 29 6/29/2022
7.0.0-preview.4.22229.4 41 6/29/2022
7.0.0-preview.3.22175.4 41 6/29/2022
7.0.0-preview.2.22152.2 48 6/29/2022
7.0.0-preview.1.22076.8 35 6/29/2022
6.0.2 12 11/13/2024
6.0.2-mauipre.1.22102.15 45 6/29/2022
6.0.2-mauipre.1.22054.8 41 6/29/2022
6.0.1 45 10/21/2022
6.0.0 38 6/29/2022
6.0.0-rc.2.21480.5 50 6/29/2022
6.0.0-rc.1.21451.13 54 6/29/2022
6.0.0-preview.7.21377.19 43 6/29/2022
6.0.0-preview.6.21352.12 41 6/29/2022
6.0.0-preview.5.21301.5 50 6/29/2022
6.0.0-preview.4.21253.7 33 6/29/2022
6.0.0-preview.3.21201.4 40 6/29/2022
6.0.0-preview.2.21154.6 32 6/29/2022
6.0.0-preview.1.21102.12 48 6/29/2022
5.0.2 31 6/29/2022
5.0.1 32 6/29/2022
5.0.0 41 6/29/2022
5.0.0-rc.2.20475.5 38 6/29/2022
5.0.0-rc.1.20451.14 48 6/29/2022
5.0.0-preview.8.20407.11 43 6/29/2022
5.0.0-preview.7.20364.11 32 6/29/2022
5.0.0-preview.6.20305.6 36 6/29/2022
5.0.0-preview.5.20278.1 39 6/29/2022
5.0.0-preview.4.20251.6 51 6/29/2022
5.0.0-preview.3.20215.2 50 6/29/2022
5.0.0-preview.2.20160.3 35 6/29/2022
5.0.0-preview.1.20120.4 46 6/29/2022
3.1.32 28 1/19/2023
3.1.31 32 11/26/2022
3.1.30 34 10/25/2022
3.1.29 36 9/17/2022
3.1.28 30 9/17/2022
3.1.27 48 9/17/2022
3.1.26 40 6/29/2022
3.1.25 36 6/29/2022
3.1.24 37 6/29/2022
3.1.23 35 6/29/2022
3.1.22 32 6/29/2022
3.1.21 42 6/29/2022
3.1.20 50 6/29/2022
3.1.19 34 6/29/2022
3.1.18 36 6/29/2022
3.1.17 33 6/29/2022
3.1.16 37 6/29/2022
3.1.15 35 6/29/2022
3.1.14 35 6/29/2022
3.1.13 35 6/29/2022
3.1.12 35 6/29/2022
3.1.11 35 6/29/2022
3.1.10 39 6/29/2022
3.1.9 36 6/29/2022
3.1.8 51 6/29/2022
3.1.7 55 6/29/2022
3.1.6 44 6/29/2022
3.1.5 37 6/29/2022
3.1.4 37 6/29/2022
3.1.3 32 6/29/2022
3.1.2 34 6/29/2022
3.1.1 35 6/29/2022
3.1.0 42 6/29/2022
3.1.0-preview3.19553.2 55 6/29/2022
3.1.0-preview2.19525.4 56 6/29/2022
3.1.0-preview1.19506.1 55 6/29/2022
3.0.3 41 6/29/2022
3.0.2 32 6/29/2022
3.0.1 41 6/29/2022
3.0.0 32 6/29/2022
3.0.0-rc1.19456.10 35 6/29/2022
3.0.0-preview9.19423.4 49 6/29/2022
3.0.0-preview8.19405.4 34 6/29/2022
3.0.0-preview7.19362.4 42 6/29/2022
3.0.0-preview6.19304.6 35 6/29/2022
3.0.0-preview5.19227.9 44 6/29/2022
3.0.0-preview4.19216.2 42 6/29/2022
3.0.0-preview3.19153.1 43 6/29/2022
3.0.0-preview.19074.2 41 6/29/2022
3.0.0-preview.18572.1 37 6/29/2022
2.2.0 33 6/29/2022
2.2.0-preview3-35497 50 6/29/2022
2.2.0-preview2-35157 37 6/29/2022
2.2.0-preview1-35029 50 6/29/2022
2.1.1 37 6/29/2022
2.1.0 36 6/29/2022
2.1.0-rc1-final 35 6/29/2022
2.1.0-preview2-final 49 6/29/2022
2.1.0-preview1-final 26 6/29/2022
2.0.0 55 6/29/2022
2.0.0-preview2-final 47 6/29/2022
2.0.0-preview1-final 60 6/29/2022
1.1.1 61 6/29/2022
1.1.0 34 6/29/2022
1.1.0-preview1-final 56 6/29/2022
1.0.2 35 6/29/2022
1.0.1 30 6/29/2022
1.0.0 34 6/29/2022
1.0.0-rc2-final 58 6/29/2022
1.0.0-rc1-final 52 6/29/2022