1 回答

TA貢獻(xiàn)1826條經(jīng)驗(yàn) 獲得超6個(gè)贊
你可以制作IHelpers和Helpers通用。這將允許您創(chuàng)建一個(gè)使用類(lèi)型參數(shù)名稱(chēng)的類(lèi)別ILoggerFactory的實(shí)例。ILogger這是一個(gè)例子:
public interface IHelpers<T> { }
public class Helpers<T> : IHelpers<T>
{
private readonly ILogger _logger;
public Helpers(ILoggerFactory loggerFactory)
{
_logger = loggerFactory.CreateLogger<T>();
}
}
要在 eg 中使用它SomeClass,請(qǐng)IHelpers<SomeClass>在構(gòu)造函數(shù)中使用 for DI:
public class SomeClass
{
private readonly IHelpers<SomeClass> _helpers;
public SomeClass(IHelpers<SomeClass> helpers)
{
_helpers = helpers;
}
}
最后,注冊(cè)IHelpers<T>為開(kāi)放通用,如下所示:
services.Add(ServiceDescriptor.Singleton(typeof(IHelpers<>), typeof(Helpers<>)));
- 1 回答
- 0 關(guān)注
- 154 瀏覽
添加回答
舉報(bào)