An Automatic dependencies management system for ASP.NET Core and powers Aiursoft.
Why this project
The traditional way to add dependencies is:
Which means that you have to manually inject all dependencies. When you have too much of them, it is possible to make a mistake.
How to use Aiursoft.Scanner
Aiursoft.Scanner to your ASP.NET Core project from nuget.org:
dotnet add package Aiursoft.Scanner
Add the interface to your class like this:
public class MySingletonService : ISingletonDependency
public class MyScopedService : IScopedDepdency
public class MyTransientService : ITransientDepdency
And just call this in your
That's all! All your dependencies are registered. Just use it like previous before:
public class MyController : Controller
private readonly MyScopedService _service;
public MyController(MyScopedService service)
_service = service;
When you want to register a dependency which implements an abstract, your privouse way is like:
public class MyClass : IAbstract
That's fine. But now we want to register this automatically.
Add the dependency interface to your service like this:
public class MyClass : IAbstract, IScopedDependency
When you are registering all dependencies in your
StartUp.cs, tell us that your project supports your abstract.
And you can call it with multiple abstracts:
services.AddScannedDependencies(typeof(IAbstract1), typeof(IAbstract2), typeof(IAbstract3));
That's all! Enjoy!