在后面的代码中更改web.config设置

时间:2009-11-18 11:13:07

标签: asp.net web-config

我正在使用第三方上传控件,并且在web.config中有一些设置

<uploadSettings allowedFileExtensions=".pdf,.xls,.doc,.zip,.rar,.jpg" scriptPath="upload_scripts" imagePath="" cssPath="upload_styles" enableManualProcessing="true" showProgressBar="true" showCancelButton="true"/>

现在我想从代码后面改变这些设置,例如我想让showcancelbutton =“false”

我该怎么做

2 个答案:

答案 0 :(得分:5)

由于它是您想要更改的Web应用程序,我将使用WebConfigurationManager。

如果您要更改的配置值位于单独的部分中,则需要先获取该部分:

var myConfiguration = (Configuration)WebConfigurationManager.OpenWebConfiguration("~");
var section = (MySectionTypeHere)myConfiguration.GetSection("system.web/mySectionName");
//Change your settings here
myConfiguration.Save();

请记住,每次更改web.config时都会重新启动Web应用程序。

可以更详细地解释它的文章here

答案 1 :(得分:0)

您可以使用驻留在system.configuration中的Configuration类。

string configLocation = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);
string configPath = Path.Combine(configLocation, "yourAppName");
Configuration configFile = ConfigurationManager.OpenExeConfiguration(configPath); configFile.AppSettings.Settings["TheSettingYouWantToChange"].Value = "NewValue"; configFile.Save(ConfigurationSaveMode.Modified);