An open API service indexing awesome lists of open source software.

https://github.com/yunusefendi52/autoinjection.fody


https://github.com/yunusefendi52/autoinjection.fody

Last synced: 21 days ago
JSON representation

Awesome Lists containing this project

README

        

# AutoInjection

![https://github.com/yunusefendi52/AutoInjection.Fody/actions/workflows/main.yml/badge.svg](https://github.com/yunusefendi52/AutoInjection.Fody/actions/workflows/main.yml/badge.svg)

[![Nuget](https://img.shields.io/nuget/v/AutoInjection.Fody?style=for-the-badge)](https://www.nuget.org/packages/AutoInjection.Fody)

### Installation
```xml

```

Auto inject service to class with `IServiceProvider`

Register your service provider
```csharp
AutoInjection.Register(serviceProvider);
```

Decorate parameter constructor
```csharp
public class MyViewModel
{
public MyViewModel([AutoInjection] IApiService apiService = null)
{
}
}
```

At compile time it will inject the service provider to get the service, like
```csharp
public class MyViewModel
{
public MyViewModel([AutoInjection] IApiService apiService = null)
{
if (apiService == null)
{
apiService = AutoInjection.GetService();
}
}
}
```