我已经像这样设置了我的控制台应用的 abc 0
var services = new ServiceCollection()
.AddLogging(logging => logging.AddConsole())
.BuildServiceProvider();
然后我尝试在另一个类中使用它,就像这样
private readonly ILogger _logger;
public MyClass(ILogger logger)
{
_logger = logger;
}
public void MyFunc()
{
_logger.Log(LogLevel.Error, "My Message");
}
System.InvalidOperationException: ‘无法解析类型的服务 微软,扩展,日志,ILogger
我已经尝试了解决方案 给你,但它不适合我。
剪辑 根据雅科夫下面的评论和 这个 Github 评论,我能够正确地解决这个问题
public MyClass(ILogger<MyClass> logger)
{
_logger = logger;
}
我希望在初始的 BuildServiceProvider
中使用这个命令,但是看起来每次我想使用日志记录器(或者创建我自己的 ILogger)时都必须重复这个命令。