编辑web.config文件

时间:2018-02-20 21:09:52

标签: c# asp.net .net

我们有一个应用程序,我们希望使用应用程序用户界面在appSettings标记下配置部署值。为了做到这一点,我们需要向应用程序根文件夹授予应用程序池标识写入权限。我们不想这样做。有没有办法编辑web.config文件而不授予应用程序池标识其他权限?

1 个答案:

答案 0 :(得分:3)

我不会建议你走这个方向。编辑web.config运行时非常糟糕。有几个原因。以下是其中几个:当您更改web.config时,应用程序池将被回收,这意味着您的Web应用程序将重新运行。会话中的所有内容(默认存储在内存中)都将消失。这绝对不是你需要的。另一个问题是潜在的安全漏洞。

通常,您必须在exetrnal存储中存储可以更改运行时的设置,例如数据库或序列化(XML或JSON)文件。

如果您具有不应更改运行时的设置,但依赖于Web应用程序的实例,则可以使用Web配置转换。例如,假设您有5个客户,并且IIS中有5个Web应用程序(每个客户一个),并且每个客户都有一个appSetting,每个客户都是唯一的。在这种情况下,我会在将web.config文件部署到生产环境之前使用Web配置转换准备不同版本的Web配置文件。