由于项目中一直都是用的 Nlog来记录项目日志,项目升级.netcore3.0后,发现Nlog还没有3.0版本的包。
现在解决的方法是在IWebHostBuild里面,调用UseNlog();
在Startup.cs的Configure中,添加代码:
loggerFactory.AddNLog();
NLog.Web.NLogBuilder.ConfigureNLog("NLog.config");
<ItemGroup>
<PackageReference Include="NLog.Extensions.Logging" Version="1.5.4" />
</ItemGroup>
using NLog.Extensions.Logging;
namespace Q120413
{
public class Program
{
public static void Main(string[] args)
{
CreateHostBuilder(args).Build().Run();
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup<Startup>()
.ConfigureLogging(logging => logging.AddNLog());
});
}
}
@dudu,刚刚看了一下Nlog.Extension.Logging的源码,测试了一下,用扩展方法.UseNLog()也可以
//.ConfigureLogging(logging => logging.AddNLog())
.UseNLog()
@Code_Song: 赞!.UseNLog()
是更简单的方法。