[英]How to get ILoggerFactory in .net 6
In.Net5 ILoggerFactory 在 Startup.cs 中作为 Configure function 使用如下:
public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ILoggerFactory loggerFactory)
{
//here we used loggerFactory
loggerFactory.AddProvider(loggerprovider);
}
在.Net6中如何用aap或builder获取
var app = builder.Build();
或者
var builder = WebApplication.CreateBuilder(args);
WebApplicationBuilder
公开了具有AddProvider(ILoggingBuilder, ILoggerProvider)
扩展方法的Logging
属性。 尝试使用它:
builder.Logging.AddProvider(loggerprovider);
要获取实际的记录器工厂实例:
var app = builder.Build();
var lf = app.Services.GetRequiredService<ILoggerFactory>();
适用于 .net 6 web api | 程序.cs
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Logging.Log4Net.AspNetCore;
var builder = WebApplication.CreateBuilder(args);
builder.Logging.AddLog4Net();
以上在.net 6中为我工作
感谢: https ://onloupe.com/blog/does-log4net-work-on-net6/
您可以在 builder.Build() 之后通过 Program.cs class 中的 GetService 方法在 dotnet 6 中获取 ILoggerFactory
var loggerFactory = app.Services.GetService<ILoggerFactory>();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.