Web.config文件中的appSettings和connectionStrings之间的区别?

时间:2009-08-25 18:06:41

标签: asp.net

为什么还有另一个名为connectionStrings的部分?我一直只使用appSettings,直到我在一个新项目中注意到这一点:

<appSettings>
 <add key="SqlConnString" value="server=ABC;database=ABC;uid=A;pwd=B;"/>
</appSettings>

<connectionStrings>    
</connectionStrings>

有区别吗?有什么理由我应该使用其中一个吗?

2 个答案:

答案 0 :(得分:9)

来自documentation

  

connectionStrings元素   指定数据库的集合   连接字符串,作为名称/值   对,用于ASP.NET应用程序和   特征

     

在以前的ASP.NET版本中,   连接字符串存储在   的appSettings。在ASP.NET 2.0中,功能,   如会议,会员,   个性化和角色管理器,   依赖于连接字符串   存储在connectionStrings中   元件。你也可以使用   要存储的connectionStrings元素   你自己的连接字符串   应用

所以唯一真正的区别是,内置的ASP.NET 2.0功能会期望它们的连接字符串位于connectionStrings区域。

答案 1 :(得分:2)

如果您将连接字符串分隔到<connectionStrings>部分,您的配置将更易于阅读,维护和处理。

此外,您可以通过仅加密连接字符串来提高安全性,因为这些通常是敏感项目,如果它们在自己的部分中,您可以轻松地加密那一部分并留下其余部分app.config以纯文本格式显示,因此您可以轻松更新和修改设置。

马克