Visual studio 2010 是什么创建了Web.config appSettings条目?

Visual studio 2010 是什么创建了Web.config appSettings条目?,visual-studio-2010,configuration,web-config,Visual Studio 2010,Configuration,Web Config,我对ASP.NET编码相当生疏,尽管我已经完成了一段时间的基本任务 最近,我被分配到我们公司的网站,所以我正在学习更多的细节 我从源代码安全库下载了这个项目,我正在修改代码 我和一位同事正在查看Web.config文件,并注意到部分下面的内容: <appSettings> <add key="HR_EMAIL" value="myEmailAddress@work.com"/> <add key="APP_MODE" value="TEST"/>

我对ASP.NET编码相当生疏,尽管我已经完成了一段时间的基本任务

最近,我被分配到我们公司的网站,所以我正在学习更多的细节

我从源代码安全库下载了这个项目,我正在修改代码

我和一位同事正在查看
Web.config
文件,并注意到
部分下面的内容:

<appSettings>
  <add key="HR_EMAIL" value="myEmailAddress@work.com"/>
  <add key="APP_MODE" value="TEST"/>
  <!-- PROD is the production value for ssl pages -->
  <add key="HR_EMAIL_SITE_A" value="myEmailAddress@work.com"/>
  <add key="HR_EMAIL_SITE_B" value="myEmailAddress@work.com"/>
</appSettings>
),但它在另一个项目中


是什么改变了这些值?我肯定不是在睡觉的时候做的

可能有人将这些值提交给源代码管理

您获得了最新的值-可能您的同事有一段时间没有更新此文件


查看Source Safe中的文件历史记录,看看这个值发生了什么。

部分,顾名思义,是特定于存储自定义设置的应用程序的。在ASP.NET2之前,此部分用于存储web应用程序使用的连接字符串等内容

在你的情况下,我猜,你有一个管理员网站/系统,正在将你的电子邮件地址写入app.config


我看到了另一个场景,其中设置将由构建/发布脚本更新。

您可能会发现,由于环境的不同,在大多数情况下,您不会在环境之间部署web.config。您不希望测试设置(如连接字符串、电子邮件等)进入生产环境


当您可能需要完成时,VSS中的配置是本地测试副本,而生产副本具有不同的值。

您可能不知道我如何确认这一点,是吗?很难理解您所说的,但我认为是这样的。您的web.config文件包含您的项目设置。如果将配置文件从本地部署到DEV、QA或PROD,则很可能会重写该环境应该包含的内容。这就是(在大多数情况下)配置文件从未从环境迁移到环境的原因。有很多方法可以解决这个问题,比如将配置设置抽象到网站根目录之上的目录中,比如。在进行开发时,您会发现,签入源代码管理的内容并不总是您希望部署到PROD的内容。