Microsoft.Extensions.DependencyInjection 9.0.0

Prefix Reserved
dotnet add package Microsoft.Extensions.DependencyInjection --version 9.0.0                
NuGet\Install-Package Microsoft.Extensions.DependencyInjection -Version 9.0.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="9.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Microsoft.Extensions.DependencyInjection --version 9.0.0                
#r "nuget: Microsoft.Extensions.DependencyInjection, 9.0.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Microsoft.Extensions.DependencyInjection as a Cake Addin
#addin nuget:?package=Microsoft.Extensions.DependencyInjection&version=9.0.0

// Install Microsoft.Extensions.DependencyInjection as a Cake Tool
#tool nuget:?package=Microsoft.Extensions.DependencyInjection&version=9.0.0                

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.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 is compatible. 
.NET Framework net461 was computed.  net462 is compatible.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (8.5K)

Showing the top 5 NuGet packages that depend on Microsoft.Extensions.DependencyInjection:

Package Downloads
Microsoft.Extensions.Logging

Logging infrastructure default implementation for Microsoft.Extensions.Logging.

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

Microsoft.Extensions.Hosting

Hosting and startup infrastructures for applications.

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

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

GitHub repositories (902)

Showing the top 5 popular GitHub repositories that depend on Microsoft.Extensions.DependencyInjection:

Repository Stars
microsoft/PowerToys
Windows system utilities to maximize productivity
jellyfin/jellyfin
The Free Software Media System - Server Backend & API
files-community/Files
A modern file manager that helps users organize their files and folders.
microsoft/semantic-kernel
Integrate cutting-edge LLM technology quickly and easily into your apps
dotnet/maui
.NET MAUI is the .NET Multi-platform App UI, a framework for building native device applications spanning mobile, tablet, and desktop.
Version Downloads Last updated
9.0.0 5,872,908 11/12/2024
9.0.0-rc.2.24473.5 559,005 10/8/2024
9.0.0-rc.1.24431.7 294,130 9/10/2024
9.0.0-preview.7.24405.7 131,053 8/13/2024
9.0.0-preview.6.24327.7 199,260 7/9/2024
9.0.0-preview.5.24306.7 137,494 6/11/2024
9.0.0-preview.4.24266.19 121,693 5/21/2024
9.0.0-preview.3.24172.9 286,995 4/11/2024
9.0.0-preview.2.24128.5 188,259 3/12/2024
9.0.0-preview.1.24080.9 173,852 2/13/2024
8.0.1 22,829,955 10/8/2024
8.0.0 203,953,407 11/14/2023
8.0.0-rc.2.23479.6 2,185,167 10/10/2023
8.0.0-rc.1.23419.4 1,067,414 9/12/2023
8.0.0-preview.7.23375.6 660,498 8/8/2023
8.0.0-preview.6.23329.7 395,065 7/11/2023
8.0.0-preview.5.23280.8 271,821 6/13/2023
8.0.0-preview.4.23259.5 546,315 5/16/2023
8.0.0-preview.3.23174.8 415,606 4/11/2023
8.0.0-preview.2.23128.3 318,657 3/14/2023
8.0.0-preview.1.23110.8 248,238 2/21/2023
7.0.0 258,696,956 11/7/2022
7.0.0-rc.2.22472.3 537,495 10/11/2022
7.0.0-rc.1.22426.10 410,369 9/14/2022
7.0.0-preview.7.22375.6 433,556 8/9/2022
7.0.0-preview.6.22324.4 200,543 7/12/2022
7.0.0-preview.5.22301.12 174,996 6/14/2022
7.0.0-preview.4.22229.4 390,937 5/10/2022
7.0.0-preview.3.22175.4 213,061 4/13/2022
7.0.0-preview.2.22152.2 235,507 3/14/2022
7.0.0-preview.1.22076.8 178,947 2/17/2022
6.0.2 352,173 11/12/2024
6.0.1 108,867,797 10/11/2022
6.0.0 534,322,610 11/8/2021
6.0.0-rc.2.21480.5 1,509,524 10/12/2021
6.0.0-rc.1.21451.13 1,308,590 9/14/2021
6.0.0-preview.7.21377.19 446,511 8/10/2021
6.0.0-preview.6.21352.12 458,158 7/14/2021
6.0.0-preview.5.21301.5 352,096 6/15/2021
6.0.0-preview.4.21253.7 189,125 5/24/2021
6.0.0-preview.3.21201.4 553,413 4/8/2021
6.0.0-preview.2.21154.6 223,241 3/11/2021 6.0.0-preview.2.21154.6 is deprecated because it is no longer maintained.
6.0.0-preview.1.21102.12 284,169 2/12/2021 6.0.0-preview.1.21102.12 is deprecated because it is no longer maintained.
5.0.2 85,294,017 7/13/2021 5.0.2 is deprecated because it is no longer maintained.
5.0.1 111,649,904 12/8/2020 5.0.1 is deprecated because it is no longer maintained.
5.0.0 389,038,043 11/9/2020 5.0.0 is deprecated because it is no longer maintained.
5.0.0-rc.2.20475.5 695,261 10/13/2020 5.0.0-rc.2.20475.5 is deprecated because it is no longer maintained.
5.0.0-rc.1.20451.14 555,247 9/14/2020 5.0.0-rc.1.20451.14 is deprecated because it is no longer maintained.
5.0.0-preview.8.20407.11 486,707 8/25/2020 5.0.0-preview.8.20407.11 is deprecated because it is no longer maintained.
5.0.0-preview.7.20364.11 268,896 7/21/2020 5.0.0-preview.7.20364.11 is deprecated because it is no longer maintained.
5.0.0-preview.6.20305.6 121,710 6/25/2020 5.0.0-preview.6.20305.6 is deprecated because it is no longer maintained.
5.0.0-preview.5.20278.1 101,286 6/10/2020 5.0.0-preview.5.20278.1 is deprecated because it is no longer maintained.
5.0.0-preview.4.20251.6 261,581 5/18/2020 5.0.0-preview.4.20251.6 is deprecated because it is no longer maintained.
5.0.0-preview.3.20215.2 220,689 4/23/2020 5.0.0-preview.3.20215.2 is deprecated because it is no longer maintained.
5.0.0-preview.2.20160.3 264,372 4/2/2020 5.0.0-preview.2.20160.3 is deprecated because it is no longer maintained.
5.0.0-preview.1.20120.4 126,656 3/16/2020 5.0.0-preview.1.20120.4 is deprecated because it is no longer maintained.
3.1.32 12,482,525 12/13/2022
3.1.31 2,140,054 11/8/2022
3.1.30 2,149,014 10/11/2022
3.1.29 2,006,504 9/13/2022
3.1.28 3,637,896 8/9/2022
3.1.27 1,999,493 7/12/2022
3.1.26 1,753,458 6/14/2022
3.1.25 3,006,828 5/10/2022
3.1.24 1,933,395 4/11/2022
3.1.23 3,237,023 3/8/2022
3.1.22 16,694,614 12/14/2021
3.1.21 7,833,745 11/7/2021
3.1.20 4,219,863 10/11/2021
3.1.19 4,894,391 9/14/2021
3.1.18 40,170,893 8/10/2021
3.1.17 6,050,479 7/13/2021
3.1.16 10,435,792 6/8/2021
3.1.15 7,718,420 5/11/2021
3.1.14 16,170,721 4/6/2021
3.1.13 13,642,115 3/9/2021
3.1.12 10,894,131 2/9/2021
3.1.11 12,912,072 1/12/2021
3.1.10 23,626,754 11/9/2020
3.1.9 66,303,753 10/13/2020
3.1.8 64,517,945 9/8/2020
3.1.7 33,290,859 8/11/2020
3.1.6 40,321,337 7/14/2020
3.1.5 41,623,102 6/9/2020
3.1.4 56,474,865 5/12/2020
3.1.3 96,685,991 3/24/2020
3.1.2 74,756,778 2/18/2020
3.1.1 43,746,988 1/14/2020
3.1.0 201,149,962 12/3/2019
3.1.0-preview3.19553.2 2,060,961 11/13/2019 3.1.0-preview3.19553.2 is deprecated because it is no longer maintained.
3.1.0-preview2.19525.4 98,788 11/1/2019 3.1.0-preview2.19525.4 is deprecated because it is no longer maintained.
3.1.0-preview1.19506.1 1,335,463 10/15/2019 3.1.0-preview1.19506.1 is deprecated because it is no longer maintained.
3.0.3 67,864,350 2/18/2020 3.0.3 is deprecated because it is no longer maintained.
3.0.2 1,051,901 1/14/2020 3.0.2 is deprecated because it is no longer maintained.
3.0.1 5,128,547 11/18/2019 3.0.1 is deprecated because it is no longer maintained.
3.0.0 105,982,412 9/23/2019 3.0.0 is deprecated because it is no longer maintained.
3.0.0-rc1.19456.10 166,728 9/16/2019 3.0.0-rc1.19456.10 is deprecated because it is no longer maintained.
3.0.0-preview9.19423.4 1,665,282 9/4/2019 3.0.0-preview9.19423.4 is deprecated because it is no longer maintained.
3.0.0-preview8.19405.4 619,664 8/13/2019 3.0.0-preview8.19405.4 is deprecated because it is no longer maintained.
3.0.0-preview7.19362.4 199,036 7/23/2019 3.0.0-preview7.19362.4 is deprecated because it is no longer maintained.
3.0.0-preview6.19304.6 483,524 6/12/2019 3.0.0-preview6.19304.6 is deprecated because it is no longer maintained.
3.0.0-preview5.19227.9 842,531 5/6/2019 3.0.0-preview5.19227.9 is deprecated because it is no longer maintained.
3.0.0-preview4.19216.2 134,482 4/18/2019 3.0.0-preview4.19216.2 is deprecated because it is no longer maintained.
3.0.0-preview3.19153.1 398,469 3/6/2019 3.0.0-preview3.19153.1 is deprecated because it is no longer maintained.
3.0.0-preview.19074.2 203,648 1/29/2019 3.0.0-preview.19074.2 is deprecated because it is no longer maintained.
3.0.0-preview.18572.1 71,760 12/4/2018 3.0.0-preview.18572.1 is deprecated because it is no longer maintained.
2.2.0 411,341,641 12/3/2018 2.2.0 is deprecated because it is no longer maintained.
2.2.0-preview3-35497 433,152 10/17/2018 2.2.0-preview3-35497 is deprecated because it is no longer maintained.
2.2.0-preview2-35157 321,466 9/12/2018 2.2.0-preview2-35157 is deprecated because it is no longer maintained.
2.2.0-preview1-35029 157,766 8/22/2018 2.2.0-preview1-35029 is deprecated because it is no longer maintained.
2.1.1 287,229,166 6/18/2018
2.1.0 257,433,538 5/29/2018
2.1.0-rc1-final 516,702 5/6/2018 2.1.0-rc1-final is deprecated because it is no longer maintained.
2.1.0-preview2-final 684,745 4/10/2018 2.1.0-preview2-final is deprecated because it is no longer maintained.
2.1.0-preview1-final 629,909 2/26/2018 2.1.0-preview1-final is deprecated because it is no longer maintained.
2.0.0 197,942,495 8/11/2017 2.0.0 is deprecated because it is no longer maintained.
2.0.0-preview2-final 157,942 6/28/2017 2.0.0-preview2-final is deprecated because it is no longer maintained.
2.0.0-preview1-final 1,228,166 5/10/2017 2.0.0-preview1-final is deprecated because it is no longer maintained.
1.1.1 16,353,947 5/9/2017 1.1.1 is deprecated because it is no longer maintained.
1.1.0 37,723,945 11/16/2016 1.1.0 is deprecated because it is no longer maintained.
1.1.0-preview1-final 79,287 10/24/2016 1.1.0-preview1-final is deprecated because it is no longer maintained.
1.0.2 78,450,111 3/6/2017 1.0.2 is deprecated because it is no longer maintained.
1.0.1 3,589,776 12/12/2016 1.0.1 is deprecated because it is no longer maintained.
1.0.0 31,728,505 6/27/2016 1.0.0 is deprecated because it is no longer maintained.
1.0.0-rc2-final 1,870,095 5/16/2016 1.0.0-rc2-final is deprecated because it is no longer maintained.
1.0.0-rc1-final 660,206 11/18/2015 1.0.0-rc1-final is deprecated because it is no longer maintained.