Tolitech.DependencyInjection.Generators.Abstractions
1.0.0-preview.1
dotnet add package Tolitech.DependencyInjection.Generators.Abstractions --version 1.0.0-preview.1
NuGet\Install-Package Tolitech.DependencyInjection.Generators.Abstractions -Version 1.0.0-preview.1
<PackageReference Include="Tolitech.DependencyInjection.Generators.Abstractions" Version="1.0.0-preview.1" />
<PackageVersion Include="Tolitech.DependencyInjection.Generators.Abstractions" Version="1.0.0-preview.1" />
<PackageReference Include="Tolitech.DependencyInjection.Generators.Abstractions" />
paket add Tolitech.DependencyInjection.Generators.Abstractions --version 1.0.0-preview.1
#r "nuget: Tolitech.DependencyInjection.Generators.Abstractions, 1.0.0-preview.1"
#:package Tolitech.DependencyInjection.Generators.Abstractions@1.0.0-preview.1
#addin nuget:?package=Tolitech.DependencyInjection.Generators.Abstractions&version=1.0.0-preview.1&prerelease
#tool nuget:?package=Tolitech.DependencyInjection.Generators.Abstractions&version=1.0.0-preview.1&prerelease
Tolitech.DependencyInjection.Generators.Abstractions
Overview
This package provides the attribute and abstractions required for automatic dependency injection registration using source generators. It defines the ServiceRegistrationAttribute
used to mark interfaces for registration and specify their lifetimes.
Features
ServiceRegistrationAttribute
for marking interfaces- Supports lifetimes: Singleton, Scoped, Transient
- Integrates with Tolitech.DependencyInjection.Generators
Usage
Installation
To use the library, download the package via NuGet:
dotnet add package Tolitech.DependencyInjection.Generators.Abstractions
1. Annotate Interfaces
Mark your interfaces with the attribute and specify the desired lifetime:
using Tolitech.DependencyInjection.Generators.Abstractions;
using Microsoft.Extensions.DependencyInjection;
[ServiceRegistration(ServiceLifetime.Singleton)]
public interface IMyService {}
[ServiceRegistration(ServiceLifetime.Scoped)]
public interface IRepository {}
Example
[ServiceRegistration(ServiceLifetime.Transient)]
public interface IService {}
public class Service : IService {}
API
ServiceRegistrationAttribute
- Constructor:
ServiceRegistrationAttribute(ServiceLifetime lifetime)
- Property:
Lifetime
(ServiceLifetime)
Requirements
- .NET Standard 2.0+
- Microsoft.Extensions.DependencyInjection.Abstractions
Project Structure
ServiceRegistrationAttribute.cs
: Attribute definition
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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
.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 was computed. |
.NET Framework | net461 was computed. net462 was computed. 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. |
-
.NETStandard 2.0
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Tolitech.DependencyInjection.Generators.Abstractions:
Package | Downloads |
---|---|
Tolitech.DependencyInjection.Generators
Source generator that automatically registers services in the dependency injection container based on annotated interfaces and specified lifetimes. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
1.0.0-preview.1 | 135 | 7/26/2025 |