Microsoft.Extensions.DependencyInjection 10.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
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
57
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
56
FluentMigrator
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
51
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
47
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
45
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
44
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
42
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
25
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
24
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
22
FluentMigrator.Runner.Core
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
21
Microsoft.AspNetCore.Components.Web
Support for rendering ASP.NET Core components for browsers. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/3f1acb59718cadf111a0a796681e3d3509bb3381
17
Microsoft.AspNetCore.Components.Web
Support for rendering ASP.NET Core components for browsers. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/bb01bbf4433e27289b99001b7de6a582879d1835
16
Microsoft.AspNetCore.Components.Web
Support for rendering ASP.NET Core components for browsers. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/b8139c5ee58f1708b0e3368a1b241400edd6cbc4
16
Microsoft.Extensions.Logging
Logging infrastructure default implementation for Microsoft.Extensions.Logging.
14
FluentMigrator
FluentMigrator is a database migration framework for .NET written in C#. The basic idea is that you can create migrations which are simply classes that derive from the Migration base class and have a Migration attribute with a unique version number attached to them. Upon executing FluentMigrator, you tell it which version to migrate to and it will run all necessary migrations in order to bring your database up to that version. In addition to forward migration support, FluentMigrator also supports different ways to execute the migrations along with selective migrations called profiles and executing arbitrary SQL.
14
Microsoft.AspNetCore.SignalR.Client.Core
Client for ASP.NET Core SignalR This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/954f61dd38b33caa2b736c73530bd5a294174437
10
Microsoft.AspNetCore.Components.Web
Support for rendering ASP.NET Core components for browsers. This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/4442a188f9200a57635373dcd640893c0e8dcc78
10

https://go.microsoft.com/fwlink/?LinkID=799421

Version Downloads Last updated
11.0.0-preview.2.26159.112 1 03/20/2026
11.0.0-preview.1.26104.118 1 03/09/2026
10.0.5 1 03/18/2026
10.0.4 1 03/18/2026
10.0.3 1 03/02/2026
10.0.2 1 03/02/2026
10.0.1 2 12/29/2025
10.0.0 2 12/29/2025
10.0.0-rc.2.25502.107 2 12/29/2025
10.0.0-rc.1.25451.107 2 12/29/2025
10.0.0-preview.7.25380.108 4 08/26/2025
10.0.0-preview.6.25358.103 2 01/02/2026
10.0.0-preview.5.25277.114 1 06/27/2025
10.0.0-preview.4.25258.110 2 05/22/2025
10.0.0-preview.3.25171.5 2 05/22/2025
10.0.0-preview.2.25163.2 2 05/22/2025
10.0.0-preview.1.25080.5 3 02/26/2025
9.0.14 1 03/18/2026
9.0.13 1 03/02/2026
9.0.12 1 03/02/2026
9.0.11 2 12/29/2025
9.0.10 2 12/29/2025
9.0.9 2 12/26/2025
9.0.8 2 12/26/2025
9.0.7 2 12/26/2025
9.0.6 1 06/27/2025
9.0.5 2 05/22/2025
9.0.4 2 05/22/2025
9.0.3 3 05/22/2025
9.0.2 5 02/26/2025
9.0.1 6 02/26/2025
9.0.0 4 02/26/2025
9.0.0-rc.2.24473.5 4 02/26/2025
9.0.0-rc.1.24431.7 3 02/26/2025
9.0.0-preview.7.24405.7 5 02/26/2025
9.0.0-preview.6.24327.7 3 02/26/2025
9.0.0-preview.5.24306.7 3 02/26/2025
9.0.0-preview.4.24266.19 3 02/26/2025
9.0.0-preview.3.24172.9 3 02/26/2025
9.0.0-preview.2.24128.5 3 02/26/2025
9.0.0-preview.1.24080.9 3 02/26/2025
8.0.1 3 02/26/2025
8.0.0 17 09/12/2024
8.0.0-rc.2.23479.6 3 02/26/2025
8.0.0-rc.1.23419.4 5 02/26/2025
8.0.0-preview.7.23375.6 5 02/26/2025
8.0.0-preview.6.23329.7 5 02/26/2025
8.0.0-preview.5.23280.8 5 02/26/2025
8.0.0-preview.4.23259.5 5 02/26/2025
8.0.0-preview.3.23174.8 5 02/26/2025
8.0.0-preview.2.23128.3 5 02/26/2025
8.0.0-preview.1.23110.8 5 02/26/2025
7.0.0 16 09/10/2024
7.0.0-rc.2.22472.3 5 02/26/2025
7.0.0-rc.1.22426.10 5 02/26/2025
7.0.0-preview.7.22375.6 5 02/26/2025
7.0.0-preview.6.22324.4 5 02/26/2025
7.0.0-preview.5.22301.12 4 02/26/2025
7.0.0-preview.4.22229.4 5 02/26/2025
7.0.0-preview.3.22175.4 5 02/26/2025
7.0.0-preview.2.22152.2 5 02/26/2025
7.0.0-preview.1.22076.8 5 02/26/2025
6.0.2 5 02/26/2025
6.0.1 5 02/26/2025
6.0.0 5 02/26/2025
6.0.0-rc.2.21480.5 5 02/26/2025
6.0.0-rc.1.21451.13 5 02/26/2025
6.0.0-preview.7.21377.19 5 02/26/2025
6.0.0-preview.6.21352.12 5 02/26/2025
6.0.0-preview.5.21301.5 5 02/26/2025
6.0.0-preview.4.21253.7 5 02/26/2025
6.0.0-preview.3.21201.4 5 02/26/2025
6.0.0-preview.2.21154.6 5 02/26/2025
6.0.0-preview.1.21102.12 5 02/26/2025
5.0.2 5 02/26/2025
5.0.1 4 02/26/2025
5.0.0 5 02/26/2025
5.0.0-rc.2.20475.5 5 02/26/2025
5.0.0-rc.1.20451.14 5 02/26/2025
5.0.0-preview.8.20407.11 6 02/26/2025
5.0.0-preview.7.20364.11 5 02/26/2025
5.0.0-preview.6.20305.6 5 02/26/2025
5.0.0-preview.5.20278.1 5 02/26/2025
5.0.0-preview.4.20251.6 5 02/26/2025
5.0.0-preview.3.20215.2 4 02/26/2025
5.0.0-preview.2.20160.3 5 02/26/2025
5.0.0-preview.1.20120.4 5 02/26/2025
3.1.32 5 02/26/2025
3.1.31 5 02/26/2025
3.1.30 5 02/26/2025
3.1.29 5 02/26/2025
3.1.28 5 02/26/2025
3.1.27 5 02/26/2025
3.1.26 5 02/26/2025
3.1.25 5 02/26/2025
3.1.24 5 02/26/2025
3.1.23 5 02/26/2025
3.1.22 5 02/26/2025
3.1.21 4 02/26/2025
3.1.20 5 02/26/2025
3.1.19 5 02/26/2025
3.1.18 5 02/26/2025
3.1.17 5 02/26/2025
3.1.16 5 02/26/2025
3.1.15 5 02/26/2025
3.1.14 5 02/26/2025
3.1.13 5 02/26/2025
3.1.12 5 02/26/2025
3.1.11 5 02/26/2025
3.1.10 4 02/26/2025
3.1.9 5 02/26/2025
3.1.8 5 02/26/2025
3.1.7 5 02/26/2025
3.1.6 5 02/26/2025
3.1.5 5 02/26/2025
3.1.4 5 02/26/2025
3.1.3 5 02/26/2025
3.1.2 5 02/26/2025
3.1.1 5 02/26/2025
3.1.0 7 02/26/2025
3.1.0-preview3.19553.2 5 02/26/2025
3.1.0-preview2.19525.4 5 02/26/2025
3.1.0-preview1.19506.1 5 02/26/2025
3.0.3 5 02/26/2025
3.0.2 5 02/26/2025
3.0.1 5 02/26/2025
3.0.0 5 02/26/2025
3.0.0-rc1.19456.10 5 02/26/2025
3.0.0-preview9.19423.4 5 02/26/2025
3.0.0-preview8.19405.4 5 02/26/2025
3.0.0-preview7.19362.4 5 02/26/2025
3.0.0-preview6.19304.6 5 02/26/2025
3.0.0-preview5.19227.9 4 02/26/2025
3.0.0-preview4.19216.2 4 02/26/2025
3.0.0-preview3.19153.1 6 02/26/2025
3.0.0-preview.19074.2 5 02/26/2025
3.0.0-preview.18572.1 6 02/26/2025
2.2.0 5 02/26/2025
2.2.0-preview3-35497 4 02/26/2025
2.2.0-preview2-35157 4 02/26/2025
2.2.0-preview1-35029 4 02/26/2025
2.1.1 6 02/26/2025
2.1.0 5 02/26/2025
2.1.0-rc1-final 5 02/26/2025
2.1.0-preview2-final 5 02/26/2025
2.1.0-preview1-final 5 02/26/2025
2.0.0 13 09/10/2024
2.0.0-preview2-final 5 02/26/2025
2.0.0-preview1-final 5 02/26/2025
1.1.1 5 02/26/2025
1.1.0 5 02/26/2025
1.1.0-preview1-final 5 02/26/2025
1.0.2 5 02/26/2025
1.0.1 5 02/26/2025
1.0.0 5 02/26/2025
1.0.0-rc2-final 5 02/26/2025
1.0.0-rc1-final 5 02/26/2025