在这个简短的示例中,如果我只保留任何内容,则.AddConsole() 无论ConfigureServices日志级别如何,都不会记录到控制台,但如果我添加.AddConsole().AddDebug()所有消息,则会将所有消息记录到控制台 3 次!我缺少什么?谢谢!
namespace samples
{
using System;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
public class Program
{
public static void Main(string[] args)
{
var serviceCollection = new ServiceCollection();
ConfigureServices(serviceCollection);
var serviceProvider = serviceCollection.BuildServiceProvider();
var app = serviceProvider.GetService<Application>();
app.Run();
}
private static void ConfigureServices(IServiceCollection services)
{
// Add Logger
services.AddLogging(configure => configure.AddConsole().AddDebug());
// Register Application
services.AddTransient<Application>();
}
}
public class Application {
private readonly ILogger logger;
public Application(ILogger<Application> logger)
{
this.logger = logger;
this.logger.LogInformation("In Application::ctor");
} …Run Code Online (Sandbox Code Playgroud)