在C#中,可以使用自帶的日志記錄功能或第三方庫來記錄日志。以下是一個使用自帶的日志記錄功能的例子:
using System;
using Microsoft.Extensions.Logging;
public class MyWebServer
{
private readonly ILogger<MyWebServer> _logger;
public MyWebServer(ILogger<MyWebServer> logger)
{
_logger = logger;
}
public void HandleRequest()
{
try
{
// 處理請求的代碼
_logger.LogInformation("請求處理成功");
}
catch (Exception ex)
{
_logger.LogError(ex, "處理請求時出錯");
}
}
}
class Program
{
static void Main(string[] args)
{
ILoggerFactory loggerFactory = LoggerFactory.Create(builder =>
{
builder.AddConsole();
});
ILogger<MyWebServer> logger = loggerFactory.CreateLogger<MyWebServer>();
MyWebServer webServer = new MyWebServer(logger);
webServer.HandleRequest();
}
}
在上面的例子中,我們首先創建了一個MyWebServer
類,它包含一個ILogger
類型的成員變量,用于記錄日志。在HandleRequest
方法中,我們使用_logger.LogInformation
和_logger.LogError
方法記錄日志信息。
在Main
方法中,我們首先創建一個ILoggerFactory
實例,并使用AddConsole
方法添加控制臺日志記錄器。然后創建一個MyWebServer
實例,并將日志記錄器傳遞給它,最后調用HandleRequest
方法來處理請求并記錄日志。
除了使用自帶的日志記錄功能,也可以使用第三方日志記錄庫,比如Serilog、NLog等來記錄日志。這些庫提供了更多的靈活性和功能,可以根據實際需求選擇合適的日志記錄庫。