加密后,web.config中的自定义配置更新无法正常工作

时间:2017-11-03 11:15:58

标签: c# asp.net-mvc-4

<appSettings>
    <add key="webpages:Version" value="2.0.0.0" />
    <add key="webpages:Enabled" value="false" />
    <add key="PreserveLoginUrl" value="true" />
    <add key="ClientValidationEnabled" value="true" />
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
    <add key="ServerName" value="localhost" />
    <add key="DatabaseName" value="amc_live" />    
    <!--<add key="PwdName" value="123456" />-->
    <add key="LogError" value="1" />
  </appSettings>


  <secureAppSettings>
    <add key="UserName" value="root" />
    <add key="Password" value="12345" />
  </secureAppSettings>

这里是上面的代码...在加密securityAppSetting之后,我无法以编程方式更新它。

我使用下面的代码来更新

xmlDoc.Load(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
xmlDoc.SelectSingleNode("//secureAppSettings/add[@key='Password']").Attributes["value"].Value = Pass;
xmlDoc.Save(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile);
ConfigurationManager.RefreshSection("secureAppSettings");

但是在下面的代码行中,它会抛出错误,例如&#34;对象引用未设置为对象的实例。&#34;当我尝试更新。

xmlDoc.SelectSingleNode("//secureAppSettings/add[@key='Passw‌​ord']").Attributes["‌​value"].Value = Pass;

感谢。

0 个答案:

没有答案