gpt4 book ai didi

c# - log4net xmlconfigurator.configure需要使用dll内嵌的xml文件

转载 作者:可可西里 更新时间:2023-11-01 10:03:36 25 4
gpt4 key购买 nike

我正在创建一个控制台应用程序 (exe) 并尝试使用 log4net 记录错误。如果我在 main 方法中给出以下任何命令,记录器工作正常:

XmlConfigurator.Configure(new FileInfo(@"filepath\log4net.config")); 

using (FileStream fs = new FileStream("..\\..\\log4net.config",FileMode.Open))
{ XmlConfigurator.Configure(fs); }

但我需要单独拥有 log4net.config 文件。所以我的问题是 - 我如何在我的主要方法中引用 log4net.config 文件(嵌入在 exe 中)以启用记录器,这样我就不需要除 exe 之外的单独的 log4net 配置文件文件?这使得将 exe 单独移动到其他机器变得更加容易。

注意:log4net.config文件是exe中的内嵌资源。

最佳答案

要从嵌入式文件加载配置,最好的方法是使用 overload of Configure that takes a stream ,例如:

 var assembly = Assembly.GetExecutingAssembly(); // or GetEntryAssembly()
var resourceName = "log4net.config";

using (Stream stream = assembly.GetManifestResourceStream(resourceName))
{
XmlConfigurator.Configure(stream);
}

关于c# - log4net xmlconfigurator.configure需要使用dll内嵌的xml文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42547720/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com