Automated.Arca.Libraries
2.2.0
dotnet add package Automated.Arca.Libraries --version 2.2.0
NuGet\Install-Package Automated.Arca.Libraries -Version 2.2.0
<PackageReference Include="Automated.Arca.Libraries" Version="2.2.0" />
<PackageVersion Include="Automated.Arca.Libraries" Version="2.2.0" />
<PackageReference Include="Automated.Arca.Libraries" />
paket add Automated.Arca.Libraries --version 2.2.0
#r "nuget: Automated.Arca.Libraries, 2.2.0"
#:package Automated.Arca.Libraries@2.2.0
#addin nuget:?package=Automated.Arca.Libraries&version=2.2.0
#tool nuget:?package=Automated.Arca.Libraries&version=2.2.0
Automated Registration and Configuration (of Classes) through Attributes (ARCA)
PURPOSE
The purpose of ARCA is to perform automated registration and configuration of classes.
The main use cases are the (parametrized) registration and configuration of classes for:
- Dependency injection
- CQRS: registration of events, commands, handlers
- Custom registries that are not meant for dependency injection
ARCA doesn't depend on a dependency injection container. It doesn't even know what dependency injection is; that's known only to a few dedicated packages.
MIXING MANUAL AND AUTOMATED REGISTRATION
ARCA can be introduced progressively into an existing project because it's possible to mix manual and automated dependency injection registration. You should not register the same class both manually and automatically.
HOW IT WORKS
Attributes are used to mark classes that have to be registered or configured, and to specify (complex) parameters for processing.
Attributes are processed by the ARCA manager, through extensions.
The combination between attributes and extensions allows you to easily perform any kind of automated registration and configuration.
Both attributes and extensions can be in the consumer code.
PACKAGE DESCRIPTIONS
Automated.Arca.Abstractions.Core- Core abstractions. ContainsIProcessable. Use it to create your own attributes and extensions. It's usually necessary.Automated.Arca.Abstractions.DependencyInjection- Dependency injection abstractions.Automated.Arca.Abstractions.Specialized- Specialized abstractions. Use for middleware and CQRS. Implement these interfaces in your CQRS implementation.Automated.Arca.Attributes.DependencyInjection- Dependency injection attributes to apply on classes to register / configure.Automated.Arca.Attributes.Specialized- Specialized attributes to apply on classes to register / configure. Use for middleware and CQRS.Automated.Arca.Extensions.DependencyInjection- Dependency injection extensions for the dependency injection attributes.Automated.Arca.Extensions.Specialized- Specialized extensions for the specialized attributes. Use for middleware and CQRS.Automated.Arca.Implementations.ForMicrosoft- Implementations for Microsoft's dependency injection.Automated.Arca.Libraries- Libraries for other packages.Automated.Arca.Manager- The ARCA manager. Use during the startup of an application.
The ForMicrosoft packages contain dependencies which are meant to be used in applications that use the Microsoft dependency injection container.
Developed by https://github.com/georgehara/Arca . The full documentation is included there.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. 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. |
-
net10.0
- No dependencies.
NuGet packages (6)
Showing the top 5 NuGet packages that depend on Automated.Arca.Libraries:
| Package | Downloads |
|---|---|
|
Automated.Arca.Abstractions.Core
Automated registration and configuration of classes for dependency injection, CQRS. Core abstractions. Contains `IProcessable`. Use it to create your own attributes and extensions. It's usually necessary. |
|
|
Automated.Arca.Abstractions.DependencyInjection
Automated registration and configuration of classes for dependency injection, CQRS. Dependency injection abstractions. |
|
|
Automated.Arca.Implementations.ForMicrosoft
Automated registration and configuration of classes for dependency injection, CQRS. Implementations for Microsoft's dependency injection. |
|
|
Automated.Arca.Manager
Automated registration and configuration of classes for dependency injection, CQRS. The ARCA manager. Use during the startup of an application. |
|
|
Automated.Arca.Extensions.Specialized
Automated registration and configuration of classes for dependency injection, CQRS. Specialized extensions for the specialized attributes. Use for middleware and CQRS. |
GitHub repositories
This package is not used by any popular GitHub repositories.