防止配置文件被不小心删除和篡改
/// <summary>
/// 基于Log4net的日志输出类
/// 配置文件Log4net.config
/// </summary>
public class LogHelper
{
#if NETCOREAPP
private static ILog log = Configure();
public static ILog Configure(string repositoryName = "NETCoreRepository", string configFile = "/Resources/Log4net.config")
{
ILoggerRepository repository = LogManager.CreateRepository(repositoryName);
//XmlConfigurator.Configure(repository, new FileInfo(configFile));
// 使用嵌入的资源, 保护配置文件
var stream = Application.GetResourceStream(new Uri("/Resources/Log4net.config", UriKind.Relative))?.Stream;
XmlConfigurator.Configure(repository, stream);
return LogManager.GetLogger(repositoryName, "");
}
...
}