我需要讀取另一個應用程序配置文件。在我的WPF應用程序(C#,.Net Framework 4.5), 中讀取WPF應用程序中的另一個應用程序的配置文件
var configFileMap = new ExeConfigurationFileMap
{
ExeConfigFilename = "ChildApp.exe.config"
};
// Configuration object
Configuration libConfig =
ConfigurationManager.OpenMappedExeConfiguration(configFileMap,
ConfigurationUserLevel.None);
// Get the section
section = (libConfig.GetSection("appSettings") as
AppSettingsSection);
// Getting the value
configValue = section.Settings["DBServer"];
但是configValue沒有得到任何東西,因爲在設置字典中沒有這樣的值。 我也嘗試通過使用「userSettings」在配置文件中,部分名稱是。
section = (libConfig.GetSection("userSettings") as
AppSettingsSection);
在這種情況下,我在「section」值中得到空值。
這裏是我的配置文件
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="userSettings"
type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="ChildApp.Properties.Settings"
type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089"
allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup>
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<userSettings>
<ChildApp.Properties.Settings>
<setting name="DBServer" serializeAs="String">
<value>MyServer</value>
</setting>
<setting name="Database" serializeAs="String">
<value>MyDatabase</value>
</setting>
<setting name="DBUser" serializeAs="String">
<value>sa</value>
</setting>
<setting name="DBPassword" serializeAs="String">
<value>password123</value>
</setting>
<setting name="ErrorReportingEmail" serializeAs="String">
<value>[email protected]</value>
</setting>
</ChildApp.Properties.Settings>
</userSettings>
</configuration>
我用Google搜索,但沒有找到該工程的任何解決方案。 你能幫我弄清楚什麼是錯的。 謝謝。