回答
您必须直接引用您要覆盖的applicationSettings,并明确指定具有替换值的属性。
<configuration>
<!-- section definitions for all elements in <configuration> tag -->
<configSections>
<!-- section group, meaning: there will be a <applicationSettings> tag in you configuration-->
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<!-- defines that there will be a <appname.Properties.Settings> tag inside your <applicationSettings> tag -->
<section name="appname.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</sectionGroup>
</configSections>
<applicationSettings>
<appname.Properties.Settings>
<!-- name of the property you want to override -->
<setting name="setting1" serializeAs="String">
<!-- new value -->
<value>new string value</value>
</setting>
</appname.Properties.Settings>
</applicationSettings>
</configuration>
只能通过编码:
例如,
if (bool.Parse(ConfigurationManager.AppSettings["overridethis"].ToString()))
{
//use overridden value
}
但是,如果您的问题是在不同的环境中维护不同的配置值,那么我会使用AppSettings代替。
然后,您可以使用开发人员覆盖文件。
<appSettings file="..\user.config">
见http://www.compiledthoughts.com/2005/03/overriding-webconfig-app-settings-with.html
的OP被询问Settings.settings而不是'ApplicationSettings'部。 –
要点 - 修改后! – BonyT
这取决于的设置范围。如果它的应用程序范围设置在app.config中更改它的值就足够了。
但是,如果它的用户范围设置,则app.config中存在的值只是用于新用户的默认值,并且已经使用该应用程序的每个用户都将当前使用的值存储在单独的文件中, .config,所以更改app.config中的值对已经运行该应用程序的用户没有任何影响。
由于此更改用户范围设置的值可能是一个麻烦的任务。您可以检查以下的答案的详细信息,更改用户范围设置:
使用不同的配置文件进行生产和为您服务。基本上,你可以在RELEASE中进行编译,所以如果你使用Visual Studio进行编译,使用后期构建事件来复制RELEASE配置文件,以防你准备一个生产版本。
我愿意这样的,而不是从代码进行更改,为别人是很容易看到在配置文件中differenc,然后去深入到代码中查找所有if/else
东西。
对于应用程序范围连接字符串值:
<connectionStrings>
<add name="appname.Properties.Settings.setting1" connectionString="test string" providerName="dbProvider"/>
</connectionStrings>
- 1. 覆盖变量
- 2. 覆盖变量
- 3. 变量如何被覆盖
- 4. 如何覆盖scss变量?
- 5. 如何覆盖nginx变量
- 6. 如果不通过引用传递变量,如何覆盖变量?
- 7. 如何防止Linux上的ksh通过局部变量覆盖全局变量?
- 8. PHP变量覆盖
- 9. dateJS覆盖变量
- 10. 变量被覆盖
- 11. 覆盖LESS变量
- 12. 变量被覆盖
- 13. PHP变量覆盖上一个变量
- 14. 设置变量无法覆盖变量
- 15. .NET settings.settings变量混淆
- 16. 如何覆盖(嵌套)Jekyll变量?
- 17. 如何覆盖PHP会话变量
- 18. 如何覆盖类的静态变量
- 19. 如何阻止char变量被覆盖?
- 20. JS变量如何覆盖工作?
- 21. 如何覆盖静态变量?
- 22. 覆盖接口的变量?
- 23. 变量被覆盖(bug?)
- 24. 覆盖超级变量Java
- 25. 方法覆盖和变量
- 26. 用PHP覆盖LessPHP变量
- 27. 覆盖方法 - 类变量
- 28. getJSON并发覆盖变量?
- 29. wp_session变量被$ _POST覆盖
- 30. 覆盖变量从例程
'appname'从哪里来? –