【发布时间】:2014-03-25 04:41:17
【问题描述】:
我有一个为不同公司配置的应用程序。
看起来像这样:
<setting name="Instances" serializeAs="String">
<value>2</value>
</setting>
<setting name="Instance_1_ExportTo" serializeAs="String">
<value>a/gp_import/</value>
</setting>
<setting name="Instance_1_ImportFrom" serializeAs="String">
<value>a/gp_export/</value>
</setting>
<setting name="Instance_1_CompanyID" serializeAs="String">
<value>WCAIR</value>
</setting>
<setting name="Instance_1_Name" serializeAs="String">
<value>a</value>
</setting>
<setting name="Instance_2_ExportTo" serializeAs="String">
<value>import/</value>
</setting>
<setting name="Instance_2_ImportFrom" serializeAs="String">
<value>export/</value>
</setting>
<setting name="Instance_2_CompanyID" serializeAs="String">
<value>BEAVE</value>
</setting>
<setting name="Instance_2_Name" serializeAs="String">
<value>b</value>
</setting>
现在,如果我将所有这些,包括 1 和 2 放入 Visual Studio,编译并运行它,一切都很好。
但是,如果用户将“Instances”更改为 3,并在应用程序运行时将它们复制并粘贴为“Instance_3_...”,它会尝试加载 Instance_3_Name 并得到一个 property not found 异常...? SettingsPropertyNotFoundException
有什么帮助吗?如何告诉我的应用配置文件已更改?还是必须重新编译?
该属性确实存在,并且配置文件正在从实例数中加载“3”,但我猜是因为它在编译时不存在它不存在?
【问题讨论】:
标签: vb.net winforms dynamic app-config appsettings