UnityContainerAttributeRegistration 0.1.0
See the version list below for details.
dotnet add package UnityContainerAttributeRegistration --version 0.1.0
NuGet\Install-Package UnityContainerAttributeRegistration -Version 0.1.0
<PackageReference Include="UnityContainerAttributeRegistration" Version="0.1.0"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference>
<PackageVersion Include="UnityContainerAttributeRegistration" Version="0.1.0" />
<PackageReference Include="UnityContainerAttributeRegistration"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference>
paket add UnityContainerAttributeRegistration --version 0.1.0
#r "nuget: UnityContainerAttributeRegistration, 0.1.0"
#:package UnityContainerAttributeRegistration@0.1.0
#addin nuget:?package=UnityContainerAttributeRegistration&version=0.1.0
#tool nuget:?package=UnityContainerAttributeRegistration&version=0.1.0
Unity Container Attribute Registration
This project is inspired by the way Spring Boot allows developers to register services to the di. It provides the @Service annotation which marks classes for di.
This way you can immediate see if a type is registered or not. Additionally clears your start up procedure.
Usage
You can register types to an unity container using UnityContainerAttributeRegistration.RegisterTypeAttribute.
using UnityContainerAttributeRegistration;
namespace My.Awesome.App
{
public class Program
{
public static void Main(string[] args)
{
IUnityContainer container = UnityContainerBuilder.Build();
}
}
[RegisterTypeAttribute]
public class MyService
{
}
}
Details
RegisterTypeAttribute(from, lifetimeManager)
Description
Mark a type to be registered.
Parameters
from- type:
System.Type - optional:
true - description: Type which will be requested, when using unity.
- type:
lifetimeManager- type:
UnityContainerAttributeRegistration.TypeLifetimeManager - optional:
true - description:
ITypeLifetimeManagerwhich should be used.
- type:
UnityContainerBuilder.Build()
Description
Search for all types using RegisterTypeAttribute and register these types to a new IUnityContainer.
Return value
- type:
Unity.IUnityContainer - description: New
Unity.IUnityContainerinstance, containing the registered types.
UnityContainerBuilder.Build(container)
Description
Search for all types using RegisterTypeAttribute and register these types to the passed IUnityContainer.
Parameters
container- type:
Unity.IUnityContainer - optional:
false - description:
IUnityContainerinstance to register types
- type:
Return value
- type:
Unity.IUnityContainer - description: The passed
Unity.IUnityContainer, containing the registered types.
| 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 | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 is compatible. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | 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.1
- JetBrains.Annotations (>= 2020.1.0)
- Unity (>= 5.11.7)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.