Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
解析Microsoft.Extensions.Logging ILogger而不是ILogger<;T>;使用Autofac和SeriLog_Logging_Dependency Injection_Autofac_Serilog - Fatal编程技术网

解析Microsoft.Extensions.Logging ILogger而不是ILogger<;T>;使用Autofac和SeriLog

解析Microsoft.Extensions.Logging ILogger而不是ILogger<;T>;使用Autofac和SeriLog,logging,dependency-injection,autofac,serilog,Logging,Dependency Injection,Autofac,Serilog,使用Microsoft.Extensions.Logging时,通常会注册一个ILogger工厂,并在记录器实现和ILogger之间映射 我正在寻找一种方法来注入非泛型的ILogger,并让IoC容器(在本例中是Autofac)生成类型化的ILogger,该类将被注入其中 这篇文章说: 首选注入ILogger界面,必要时注入ILogger界面。理想情况下,类的构造函数请求一个ILogger,IoC框架创建一个ILogger实例,其中T是请求类 我同意这一点,我希望能够注入一个ILogger并获得

使用Microsoft.Extensions.Logging时,通常会注册一个
ILogger工厂
,并在记录器实现和
ILogger
之间映射

我正在寻找一种方法来注入非泛型的
ILogger
,并让IoC容器(在本例中是Autofac)生成类型化的
ILogger
,该类将被注入其中

这篇文章说:

首选注入
ILogger
界面,必要时注入
ILogger
界面。理想情况下,类的构造函数请求一个ILogger,IoC框架创建一个
ILogger
实例,其中
T
是请求类

我同意这一点,我希望能够注入一个ILogger并获得正确的上下文实例

autofac serilog集成()执行类似的操作,但用于serilog

此库配置Autofac,以便为每个类自动配置正确的上下文记录器,该类中插入了
ILogger

那么,有没有一种方法可以让它与
Autofac
SeriLog
Microsoft.Extensions.Logging
一起工作呢

我试过一点,但没费多大力气

Steven建议,我可以通过使用上述autofac serilog集成并将serilog Logger注入到我的自定义抽象中来开始工作,但这样我将失去结构化日志记录的能力,等等


如果有人能给你一些指导,那就太好了。

你能分享一下到目前为止你都做了些什么吗?