C# log4net:使用AssemblyInfo.cs变量
是否有方法从log4net config标记中访问程序集变量?目前,我们指定日志文件夹如下:C# log4net:使用AssemblyInfo.cs变量,c#,wpf,log4net,filepath,C#,Wpf,Log4net,Filepath,是否有方法从log4net config标记中访问程序集变量?目前,我们指定日志文件夹如下: <!-- Setup Rolling Log File to log all information --> <appender name="DebugFileAppender" type="log4net.Appender.RollingFileAppender" > <file value="${ProgramData}\\MyCompany\\MyPr
<!-- Setup Rolling Log File to log all information -->
<appender name="DebugFileAppender" type="log4net.Appender.RollingFileAppender" >
<file value="${ProgramData}\\MyCompany\\MyProduct\\log\\Debug" />
<appendToFile value="true"/>
....
....
有没有办法用一个变量替换MyCompany和MyProduct,然后从项目的AssemblyInfo.cs文件中读取值?类似于“${ProgramData}”的内容
我已经看过关于如何设置log4net变量的帖子,我可以稍后引用它,但我希望在许多项目中重用这个配置文件,而不必修改代码。在value属性中使用%property{propname}。然后在启动时设置属性值:
GlobalContext.Properties["propname"] = "My Value";
log4net.Config.XmlConfigurator.Configure();
您需要在配置log4net之前执行此操作(如上所示)
只要重新阅读你的问题,你可能已经看到了类似的东西。我不知道你还希望它在没有编码的情况下还能神奇地工作。这就是我现在所拥有的,但我希望类似${ProgramData}环境变量的东西能够从AssemblyInfo.cs文件解析公司和产品。我已经在AssemblyInfo.cs中设置了这个信息,并且希望避免在每次重复使用代码时必须更新的另一个属性。