You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在.NET 6中配置ILoggerFactory并调用AddFile方法

在.NET 6中获取ILoggerFactory并配置文件日志

在.NET 6的极简Web应用模型里,执行var app = builder.Build();之后,你可以通过app.Services(这是一个IServiceProvider实例)获取ILoggerFactory,再调用AddFile方法,就能实现和.NET 5示例中相同的日志写入效果。

具体代码示例如下:

var builder = WebApplication.CreateBuilder(args);

// 按需添加其他服务配置,比如控制器、授权等
builder.Services.AddControllers();

var app = builder.Build();

// 从服务容器中获取ILoggerFactory实例
var loggerFactory = app.Services.GetService<ILoggerFactory>();
if (loggerFactory != null)
{
    loggerFactory.AddFile("Logs/mylog-{Date}.txt");
}

// 后续中间件配置
if (app.Environment.IsDevelopment())
{
    app.UseDeveloperExceptionPage();
}

app.UseRouting();
app.UseAuthentication();
app.UseAuthorization();

app.MapControllers();

app.Run();

补充说明

  • 要确保你已经安装了提供AddFile扩展方法的NuGet包(比如Serilog.Extensions.Logging.File),否则会找不到该方法。
  • 如果确定ILoggerFactory已经在服务容器中注册,也可以用app.Services.GetRequiredService<ILoggerFactory>(),它会在服务不存在时直接抛出异常,省去null判断。

内容的提问来源于stack exchange,提问作者Zohidbek Abduqodir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 02:45:34