leo*_*eon 8 c# serilog asp.net-core
来自@nblumhardt的帖子:
然后你可以继续删除任何其他记录器配置:appsettings.json中不需要"Logging"部分,任何地方都不需要AddLogging(),也不需要通过Startup.cs中的ILoggerFactory进行配置.
当我using Serilog;和ILogger我的控制器时,我得到一个例外.
private readonly ILogger _logger;
public CustomersController(ILogger logger)
{
_logger = logger;
}
Run Code Online (Sandbox Code Playgroud)
结果是:
处理请求时发生未处理的异常.
InvalidOperationException:尝试激活"Customers.Api.Controllers.CustomersController"时无法解析类型"Serilog.ILogger"的服务.
我还需要在Startup.ConfigureServices()方法中向DI提供一些信息吗?
据我所知,我的课程课程遵循帖子中的说明.
public class Program
{
public static void Main(string[] args)
{
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()
.MinimumLevel.Override("Microsoft", LogEventLevel.Information)
.Enrich.FromLogContext()
.WriteTo.Console()
.CreateLogger();
BuildWebHost(args).Run();
}
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseSerilog()
.Build();
}
Run Code Online (Sandbox Code Playgroud)
将预期类型从记录器更改ILogger logger为ILogger<CustomersController>:
private readonly ILogger _logger;
public CustomersController(ILogger<CustomersController> logger)
{
_logger = logger;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11521 次 |
| 最近记录: |