【发布时间】:2020-06-13 15:19:16
【问题描述】:
我的项目在 dotnet core 3.1 中,我正在使用 Scrutor 工具为装饰器注入依赖项。我有以下结构:
internal interface IProvider
{
Task<Response> Get()
}
internal sealed class Provider : IProvider
{
public async Task<Response> Get()
{
Console.writeline("Some stuff");
}
}
internal static class ProvideExtensions
{
public static Task<Response[]> Get(this IProvider provider)
{
provider.Get()
}
}
internal sealed class ProviderDecorator : IProvider
{
private readonly IProvider _inner;
ProviderDecorator(IProvider inner){
_inner = inner;
}
public async Task<Response> Get()
{
Console.writeline("Some stuff");
Console.writeline("Some stuff" + "other stuff");
}
}
Startup.cs 上的依赖注入:
services.AddSingleton<IProvider, Provider>();
services.Decorate<IProvider, ProviderDecorator>();
【问题讨论】:
标签: asp.net-core .net-core dependency-injection asp.net-core-webapi decorator