如何将 ILoggerFactory 添加到启动 dotnet core 3.1
Posted
技术标签:
【中文标题】如何将 ILoggerFactory 添加到启动 dotnet core 3.1【英文标题】:How to add ILoggerFactory to Startup dotnet core 3.1 【发布时间】:2020-11-27 18:46:53 【问题描述】:我正在使用 dotnet core 3.1,我想将 ILoggerFactory 添加到启动构造函数中。
但我得到一个错误:
'无法解析服务类型 'Microsoft.Extensions.Logging.ILoggerFactory' 尝试 激活“启动”。'
我在 Program.cs 中的配置:
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureLogging(logging =>
logging.ClearProviders();
logging.AddConsole();
)
.ConfigureWebHostDefaults(webBuilder =>
webBuilder.UseStartup<Startup>();
);
我该怎么办?
【问题讨论】:
【参考方案1】:您应该在 HTTP 请求管道中配置日志记录(您的启动配置方法)。
例如。
public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ILoggerFactory loggerFactory)
//depending on what you use for logging
loggerFactory.AddLog4Net();
//or
loggerFactory.CreateLogger...
...
【讨论】:
以上是关于如何将 ILoggerFactory 添加到启动 dotnet core 3.1的主要内容,如果未能解决你的问题,请参考以下文章
我应该将 ILogger、ILogger<T>、ILoggerFactory 或 ILoggerProvider 作为库吗?