【发布时间】:2015-05-14 00:27:03
【问题描述】:
假设我将 NLog 目标定义为:
<variable name="day" value="${date:format=dddd}"/>
<targets>
<target name="file" xsi:type="File" layout="${verbose}" fileName="${basedir}/${day}.log" />
</targets>
但是我真的想将文件位置放在应用程序配置文件或其他 xml 文件中。我不知道如何在 C# 代码中而不是在 NLog 配置文件中设置 unc 路径。
编辑:
假设应用程序将分布在美国不同地点的 100 个客户端中。每个客户端都希望拥有自己的日志文件位置。应用程序有自己的 app.config 或相应的 xml 文件来存储其位置。所以似乎没有办法对 NLog 配置文件中的位置进行硬编码。
【问题讨论】:
-
不确定“硬编码位置”是什么意思。您希望它们硬编码,还是以编程方式设置它们?
-
@Noctis,我的意思是
{basedir}被引用到应用程序文件夹 (github.com/nlog/NLog/wiki/File-target)。但在我的情况下,客户会定制自己的。例如,客户端 1 会选择“\\1111\log.txt”,但客户端 2 会选择“\\2222\log.txt”。这些信息是保存 xml 文件或应用程序配置。是的,我想以编程方式设置它们。