.NETCore Console控制台程序使用ILogger日志
.NETCore Console控制台程序使用ILogger日志
Nuget包
C# 全选
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="8.0.1" />
ConsoleLogger类
C# 全选
/// <summary>
/// .NETCore Console控制台程序使用ILogger日志
/// </summary>
public static class ConsoleLogger
{
static ILogger<Program> _Logger;
/// <summary>
/// 注入ILogger
/// </summary>
public static void AddLogger()
{
var serviceCollection = new ServiceCollection();
serviceCollection.AddLogging(builder =>
{
builder.AddConsole(); // 添加控制台日志提供程序
});
using var serviceProvider = serviceCollection.BuildServiceProvider();
// 获取日志记录器
_Logger = serviceProvider.GetRequiredService<ILogger<Program>>();
}
public static void LogCritical(string message)
{
_Logger.LogCritical(message);
}
public static void LogInformation(string message)
{
_Logger.LogInformation(message);
}
public static void LogError(string message)
{
_Logger.LogError(message);
}
public static void LogDebug(string message)
{
_Logger.LogDebug(message);
}
public static void LogTrace(string message)
{
_Logger.LogTrace(message);
}
public static void LogWarning(string message)
{
_Logger.LogWarning(message);
}
}
使用方法
控制台程序 Program.cs 添加下面代码:
C# 全选
//注入控制台Logger
ConsoleLogger.AddLogger();
//测试4个方法
ConsoleLogger.LogWarning("LogWarning");
ConsoleLogger.LogInformation("LogInformation");
ConsoleLogger.LogCritical("LogCritical");
ConsoleLogger.LogError("LogError");
//ConsoleLogger.LogDebug("LogDebug");
//ConsoleLogger.LogTrace("LogTrace");
Console.ReadKey();
版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
NewDoc C/S框架网