回答
This fellow显示的示例代码,如果你仍然希望所有的注意事项之后做到这一点:
protected void EditConfigButton(object sender, EventArgs e)
{
Configuration objConfig = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~");
AppSettingsSection objAppsettings = (AppSettingsSection)objConfig.GetSection("appSettings");
//Edit
if (objAppsettings != null)
{
objAppsettings.Settings["test"].Value = "newvalueFromCode";
objConfig.Save();
}
}
一个有效的原因,编辑web.config文件是加密的,这是文章是关于什么的。
根据你在做什么,这种方法在每种情况下都有些不同。然而,最健壮的方法是将其作为XmlDocument加载并根据需要通过该方法对其进行修改,但是您必须小心只按需要的方式对其进行修改。
您可以使用WebConfigurationManager读取特定的配置部分。这将返回一个ConfigurationSection对象。您可以使用它来读取/修改该部分中的ConfigurationElements。一旦你更新了它们,你可以保存ConfigurationSection,它会更新你的更改文件。
我使用它来自动加密Application_Start上的appSettings和connectionStrings,如果它们尚未加密。我没有真正改变任何设置,但似乎你应该能够这样做。
保存更新的配置文件可能会导致应用程序回收,具体取决于它的构建方式。
是的,我同意乔希。我曾经使用过这一点,我已经有两个负面影响:
- 加载速度慢,如果回传后的当前页面,因为ASP.NET加载在web.config和所有相关资源
- 如果更改网站.config足够早的加载周期(例如global.asax事件)站点可能永远不会以不可预知的方式加载或失败
理论上;您可以通过编程方式生成Web配置文件,并使用一些模板来简化操作。
但是,如果您尝试从站点内编辑web.config;它的高度建议你不要。至少;每次更新时都会触发应用重置;如果您使用进程内会话,这将会特别糟糕。
正如Anders所问,你在做什么?
例如更改auth模式。 – AgentFire 2015-02-02 10:04:51
同意与他人,编辑webconfig是可以实现的,但敲效果只是危险/风险参与
如果它是应用特定的值,那么它应该是在应用程序特定的配置文件
很多时候你想在部署之后修改应用程序特定的设置,比如说当某些事情是错误的时候,比如说在当前数据库关闭的情况下切换数据库连接。此外,有时您希望创建您自己的基于XML的配置文件,您希望以编程方式进行修改。
尝试XML Webpad - http://xmlwebpad.codeplex.com/
它是一个框架,以查看编辑XML文件。一旦将其与Web应用程序集成,编辑web.config就像查看web.config页面一样简单,进行所需更改并点击保存按钮(全部来自应用程序内)。
- 1. 以编程方式更改web.config
- 2. 以编程方式删除Web.config设置
- 3. 以编程方式编辑System.Servicemodel值?
- 4. 以编程方式编辑secpol.msc?
- 5. 以编程方式编辑flash cookies
- 6. SearchBar与searchDisplayController以编程方式编辑
- 7. 以编程方式编辑grub选项
- 8. 以编程方式编辑路径
- 9. 以编程方式编辑Info.plist?
- 10. 以编程方式编辑EditText
- 11. 以编程方式编辑Python源码
- 12. 以编程方式编辑IIS IPGrant表
- 13. 以编程方式编辑.webarchive文件
- 14. 如何以编程方式编辑GridView?
- 15. 以编程方式编辑NSLayoutConstraint常量?
- 16. 以编程方式编辑.conf文件
- 17. 如何以编程方式编辑datagridview?
- 18. 如何以编程方式编辑xorg.conf?
- 19. 编辑Web.config
- 20. 以编程方式编辑Windows快捷方式
- 21. 编辑web.config文件
- 22. 编辑Web.Config文件
- 23. 以编程方式编辑RTF以与写字板兼容
- 24. 以编程方式创建/编辑模板的最佳方法
- 25. 以编程方式将UITextField设置为编辑模式
- 26. 以编程方式启用PowerShell中的“快速编辑模式”
- 27. 以编程方式进入编辑模式TextField
- 28. 以编程方式取消gridview行编辑模式使用C#
- 29. 以编程方式将GridView行置于编辑模式
- 30. jqgrid:以编程方式退出编辑模式
例如更改auth模式。 – AgentFire 2015-01-30 14:53:34