抛出了类型'System.Web.HttpUnhandledException'的异常。修改web.config文件

时间:2015-06-11 11:39:22

标签: c# asp.net file-io web-config

我想更改位于服务器中的web.config文件appsetings值。我已授予该文件夹完全权限,但仍无法访问和编辑web.config文件

while executing the code its giving error saying - Exception of type 'System.Web.HttpUnhandledException' .unable to access file resides in server 

错误:

  

System.UnauthorizedAccessException:访问路径
  'C:\ Hosting \ chek \ demo.checks.in \ wwwroot \ web.config'被拒绝。

aspx.cs

string emailid = txtEmailid.Text.Trim();
Configuration config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration(HttpContext.Current.Request.ApplicationPath);
config.AppSettings.Settings.Remove("kumarSunlightitMailid");
config.AppSettings.Settings.Add("kumarSunMailid",emailid);
config.Save();

lblNewEmailid.Text = ConfigurationManager.AppSettings["kumarSunMailid"] + " is ur new mail id";

的web.config

<appSettings>
  <add key="kumarSunMailid" value="krishna@gmail.com" />
 </appSettings>

3 个答案:

答案 0 :(得分:0)

  

您遇到此错误,因为您没有提供读/写权限   用户..

     

检查几件事

  1. 检查是否有web.config是readonly ..如果是,则取消选中该选项
  2. 右键单击Web.config - &gt;转到属性 - &gt;安全性并检查您用户是否具有读/写权限。如果没有,则给它读/写权限

答案 1 :(得分:0)

如果您还没有尝试过此操作,请尝试将Everyone用户添加到该文件夹​​,并授予他完全访问权限。接下来,可以尝试设置appsettings的configSource,以便将它们存储在单独的配置文件中:

<appSettings configSource="appSettings.config" />

然后在名为appSettings.config的同一文件夹中创建一个新文件:

<?xml version="1.0" encoding="UTF-8"?>
<appSettings>
   <add key="yourKey" value="yourValue" />
</appSettings>

尝试添加对每个文件都具有完全访问权限的Everyone用户。

否则,我会创建一个新的解决方案,看看你是否可以在那里重现这种奇怪的行为。

答案 2 :(得分:0)

请允许当前用户完全访问iis项目或解决方案。