Newteq.Extensions.IServiceCollection
3.0.1
dotnet add package Newteq.Extensions.IServiceCollection --version 3.0.1
NuGet\Install-Package Newteq.Extensions.IServiceCollection -Version 3.0.1
<PackageReference Include="Newteq.Extensions.IServiceCollection" Version="3.0.1" />
paket add Newteq.Extensions.IServiceCollection --version 3.0.1
#r "nuget: Newteq.Extensions.IServiceCollection, 3.0.1"
// Install Newteq.Extensions.IServiceCollection as a Cake Addin
#addin nuget:?package=Newteq.Extensions.IServiceCollection&version=3.0.1
// Install Newteq.Extensions.IServiceCollection as a Cake Tool
#tool nuget:?package=Newteq.Extensions.IServiceCollection&version=3.0.1
Dependency Injection Extensions
By default the TryAddSingleton
(or other scopes) in the Microsoft.Extensions.DependencyInjection.Extensions
namespace/library only allows you to add a single item for a defined interface.
Using this package's extenstions will allow you to register more than 1 implementation for a specified interface.
The can be useful if you want to inject a specific instance that extends off the same interface.
The use case of this package is extremely unquie but it can be used to add in DI if your needs match the above.
Usage Example
To make use of this, simply do the following
public static void AddGeneralLogging(this IServiceCollection services)
{
services.TryAddMultiSingleton<ILoggingService, LoggingService>();
services.TryAddMultiSingleton<ILoggingService, AnotherLoggingService>();
}
Available Methods
You can use the following extensions methods off IServiceCollection
- TryAddMultiSingleton
- TryAddMultiScoped
- TryAddMultiTransient
Product | Versions 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 was computed. 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. |
.NET Core | netcoreapp2.2 is compatible. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|
First release.
Contains helpful extensions to register an interface with different implementations into the kestrel pipeline.