如何在web.config之外的ASP.Net中保留连接字符串?

时间:2016-01-12 00:37:20

标签: c# asp.net-mvc iis configuration

我有一个ASP.NET MVC应用程序,我将其作为zip文件分发给客户。然后他们在服务器上提取它。所有内容都存储在SQL数据库中,但我需要保存连接字符串,如果它存储在web.config中,它将被覆盖,并且它们只是复制所有文件。当前实现在站点目录中使用连接字符串创建一个简单文件,但在某些情况下,应用程序池标识没有写入文件系统的权限。

我的第一个想法是注册表,但听起来我会遇到类似的权限问题。是否有我保证可以访问的目录?另一个选择是安装程序执行此操作,但我不想编写安装程序。

我忽略了什么?

1 个答案:

答案 0 :(得分:2)

您可以使用configSource从其他配置文件加载它,在部署更新时您永远不会覆盖它。

如果您希望客户在初始设置时手动编写该文件,则此方法有效。

如果您希望他们将连接字符串输入UI,则注册表(仅限HKCU)应该没问题;无论文件系统权限如何,您都应该(几乎)始终有权写入用户注册表。