C# 配置错误使用的源路径

C# 配置错误使用的源路径,c#,app-config,C#,App Config,我试图通过从App.config指向配置文件来使用配置文件。 我在解决方案中创建了一个名为Config的文件夹,并创建了一个名为Environment.Config的新配置文件 我的App.Config如下所示: 而Environment.config如下所示: 我收到一个错误,上面写着: 结果消息: OneTimeSetUp:System.Configuration.ConfigurationErrorsException:配置系统未能初始化 ---->System.Configura

我试图通过从
App.config
指向配置文件来使用配置文件。 我在解决方案中创建了一个名为
Config
的文件夹,并创建了一个名为
Environment.Config
的新配置文件

我的
App.Config
如下所示:


Environment.config
如下所示:


我收到一个错误,上面写着:

结果消息:
OneTimeSetUp:System.Configuration.ConfigurationErrorsException:配置系统未能初始化 ---->System.Configuration.ConfigurationErrorsException:configSource属性必须是相对物理路径,因此不允许使用“/”字符。(D:\tfs\QA-Automation\Projects\ReportAppeal\ReportAppeal\bin\Debug\ReportAppeal.dll.config第22行)

我试图从“/”切换到“\”,但出现了不同的错误

结果消息:
System.Configuration.ConfigurationErrorsException:无法打开配置源文件“Config\Environment.Config”。(D:\tfs\QA-Automation\Projects\ReportAppeal\ReportAppeal\bin\Debug\ReportAppeal.dll.config第22行) 拆卸:System.NullReferenceException:对象引用未设置为对象的实例

我可能需要更改指向
Environment.config
文件的方式,但我不确定如何更改。

如错误所示:

configSource属性必须是相对物理路径

因此,您需要将密钥更改为物理路径,而不是相对路径:

<appSettings configSource="C:\Config\Environment.config"/>

或者把它放在根下:

<appSettings configSource="Environment.config"/>


编写完整路径时会发生什么?完全相同的错误:“configSource属性必须是相对物理路径”。我将其设置为:configSource=“D:\tfs\QA-Automation\Projects\ReportAppeal\ReportAppeal\Config\Environment.configOk,我发现为了使用物理路径,我需要将'configSource'更改为'file'。但仍然对相对路径感到疑惑。当我使用TeamCity等时,这对我来说很重要。Yaniv kapara neshama源必须是物理的,因为它就像IIS的入口点。它需要指定的物理路径才能知道从何处开始站点。