Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.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
Asp.net core 在单独的类库而不是API项目中配置Serilog_Asp.net Core_Serilog - Fatal编程技术网

Asp.net core 在单独的类库而不是API项目中配置Serilog

Asp.net core 在单独的类库而不是API项目中配置Serilog,asp.net-core,serilog,Asp.net Core,Serilog,我创建了一个.Net标准库,并将整个Serilog配置移动到该库中。 现在我只是引用了API项目中的类库,而没有向API添加Serilog包 问题:控制器内的ILogger没有记录消息,但Program.cs中的消息工作正常。我理解它为什么在Program.cs中工作,因为我使用Serlog的Log.Logger.information()来编写消息,但控制器没有记录意味着ILogger的依赖注入在某个地方被破坏了 注意:如果我删除类库,在program.cs中编写相同的初始化代码,并在API项

我创建了一个.Net标准库,并将整个Serilog配置移动到该库中。 现在我只是引用了API项目中的类库,而没有向API添加Serilog包

问题:控制器内的ILogger没有记录消息,但Program.cs中的消息工作正常。我理解它为什么在Program.cs中工作,因为我使用Serlog的Log.Logger.information()来编写消息,但控制器没有记录意味着ILogger的依赖注入在某个地方被破坏了

注意:如果我删除类库,在program.cs中编写相同的初始化代码,并在API项目中添加所有Serilog包,那么一切都可以正常工作

我创建了一个示例项目并在Github中发布。API项目可以启动,并且应该在控制台输出中看到一条消息。


提前谢谢。

嗨,吉利达!查看记录器初始化代码的结构会有所帮助。是否在
Main()
的开头调用记录器初始化例程?您的例程是否包含必要的
useserlog()
调用
IHostBuilder
?抱歉,刚刚看到您的示例链接,将有一个外观看起来好像repo中缺少
UseQuicLog()
的源代码?抱歉,这是我的错,我将所有更改推送到了repo。