C# NLog配置和附加项目

C# NLog配置和附加项目,c#,.net,app-config,nlog,C#,.net,App Config,Nlog,在我的解决方案中,有一个使用NLog的主项目,还有一个小型(独立)项目,其目的是允许更新解决方案配置文件中部分的属性。(SolutionName.exe.config) 我创建了从ConfigurationElement、ConfigurationElementCollection和ConfigurationSection继承的类,以便能够读写配置文件 我必须在配置文件中定义NLog部分,否则NLog将无法工作。 我的配置文件如下所示: <configSections> <

在我的解决方案中,有一个使用NLog的主项目,还有一个小型(独立)项目,其目的是允许更新解决方案配置文件中
部分的属性。(SolutionName.exe.config)

我创建了从ConfigurationElement、ConfigurationElementCollection和ConfigurationSection继承的类,以便能够读写配置文件

我必须在配置文件中定义NLog部分,否则NLog将无法工作。 我的配置文件如下所示:

<configSections>
  <section name="nlog" type="NLog.Config.ConfigSectionHandler, NLog" /> <- need to remove this to make it work
  <section name="nlog" type="ReadWriteConfig.NLogSection, ReadWriteConfig" />
</configSections>

处理配置文件的正确方法是什么?

我真的不明白您想做什么。ReadWriteConfig是否应该从NLog的ConfigurationSection读取/写入NLog配置值?为什么有两个同名的配置部分(“nlog”)?另外,我不知道您的要求,但NLog不要求在应用程序的配置文件中配置自己。您可以通过NLog.config文件配置NLog。很抱歉,格式不好。有丢失的标签。我试图做的是从一个独立的应用程序更改配置文件中的nlog/targets和nlog/rules部分。我更喜欢将所有设置放在一个地方..类似问题:
ExeConfigurationFileMap configFileMap = new ExeConfigurationFileMap();
configFileMap.ExeConfigFilename = @"somepath\SolutionName.exe.config";

// Get current configuration file.
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configFileMap, ConfigurationUserLevel.None);

NLogSection myUrlsSection = config.GetSection("nlog") as NLogSection;