Setting.settings和web.config之间的区别?

时间:2010-05-23 00:09:11

标签: asp.net visual-studio

这听起来有点愚蠢。

我总是有这样的印象:web.config应该存储所有可能在构建后设置和设置更改的设置。设置应该具有可能更改预构建的设置。

但是我看到了在setting.settings中有类似连接字符串的项目。连接字符串应该一直在web.config中,不应该吗?

我对设计透视答案感兴趣。

只是一些背景知识: 我目前的情况是我正在开发一个Web应用程序,其中所有三个层都在三个独立的Visual Studio项目中抽象化,因此每个层都有自己的.settings和.config文件。

2 个答案:

答案 0 :(得分:11)

Web.config主要用于配置,它还存储设置的默认值。

Settings.settings只是Visual Studio的一个便利文件,用于提供用于编辑设置的UI。

.config有两种不同的版本:Windows应用程序的App.config(名为YourApplication.exe.config)和Web应用程序的Web.config。它们共享相同的模式,语法和选项。

  • 您可能会注意到,如果您向Settings.settings添加设置,它也会被添加到.config中。
  • .config必须与应用一起部署,但Settings.settings不需要。

答案 1 :(得分:0)

Setting.settings是一个类,它不用于存储连接字符串,它用于将web / app.config中的特定连接字符串作为类的属性公开。如果找不到特定的连接字符串,VS也会倾向于硬编码默认值。