MinApiLib.DependencyInjection
7.0.2
See the version list below for details.
dotnet add package MinApiLib.DependencyInjection --version 7.0.2
NuGet\Install-Package MinApiLib.DependencyInjection -Version 7.0.2
<PackageReference Include="MinApiLib.DependencyInjection" Version="7.0.2" />
paket add MinApiLib.DependencyInjection --version 7.0.2
#r "nuget: MinApiLib.DependencyInjection, 7.0.2"
// Install MinApiLib.DependencyInjection as a Cake Addin #addin nuget:?package=MinApiLib.DependencyInjection&version=7.0.2 // Install MinApiLib.DependencyInjection as a Cake Tool #tool nuget:?package=MinApiLib.DependencyInjection&version=7.0.2
MinApiLib.DependencyInjection
This package contains extensions to register services in the DI container using Attributes.
Installation
You can install this package using the NuGet package manager:
Install-Package MinApiLib.DependencyInjection
Or using the .NET CLI:
dotnet add package MinApiLib.DependencyInjection
Usage
To register a service, you can use the RegisterInIServiceCollection
attribute:
[RegisterInIServiceCollection]
public class UserService : IUserService
{
public string GetUserName() => "John Doe";
}
By default, the service is registered as transient and for the same type of the service, but you can change this behavior by adding the Type
and / or the ServiceLifetime
parameters:
[RegisterInIServiceCollection(typeof(IUserService), ServiceLifetime.Scoped)] )]
public class UserService : IUserService
{
public string GetUserName() => "John Doe";
}
To register all services in the assembly, you can use the AddAssembly
method:
builder.Services.AddAssembly();
By default, it wil register the classes in the current executing assembly, but you can change this behavior by adding the Assembly
parameter:
builder.Services.AddAssembly(typeof(SomeObject).Assembly);
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net7.0 is compatible. 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. |
-
net7.0
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.