.net 如何在运行时更改NLog规则目标?

.net 如何在运行时更改NLog规则目标?,.net,nlog,.net,Nlog,我有原始配置: <rules> <logger name="Logger" minlevel="Trace" writeTo="FileLog,syslog" /> </rules> 它将打印到文件并发送到服务器 我希望在运行时更改目标,有时更改为FileLog,有时更改为syslog,有时更改为两者。 是否有一种可编程的方法?两个选项:启用配置的自动加载(我想编写类似于DisableAllSyslogTargetsEnableAllTarget

我有原始配置:

<rules>
    <logger name="Logger" minlevel="Trace" writeTo="FileLog,syslog" />
</rules>

它将打印到文件并发送到服务器

我希望在运行时更改目标,有时更改为FileLog,有时更改为syslog,有时更改为两者。
是否有一种可编程的方法?

两个选项:启用配置的自动加载(
我想编写类似于
DisableAllSyslogTargets
EnableAllTargets
EnableOnlySLogTargets
为什么为0?为什么为1?如果配置文件具有某种正常的复杂性,该怎么办(多个目标,每个目标有多条规则)?在这个问题中只有一条规则。现在有多条规则更容易。将很快更新答案。@4myle updated。让我知道这是否能回答您的问题:)