Team Foundation Server项目可以有不同的web.config文件吗?

时间:2009-09-16 07:52:46

标签: asp.net-mvc tfs web-config development-environment configuration-files

我有一个简单的ASP.NET MVC网站。它具有调试,测试和发布配置模式。

我们正在使用TFS作为源代码控制和错误跟踪等。很好。

现在,我们即将开始使用Team Builds来自动化一些持续整合。问题是,我们不确定如何制作它,以便如果我们想要进行DEBUG构建或RELEASE构建,它还会将正确的web.config文件放入目标目录。此外,我们将web.config文件的某些部分解压缩为单独的文件(例如,连接字符串部分或机器密钥部分等)。可以将正确的环境文件正确删除到目标目录中。

3 个答案:

答案 0 :(得分:3)

您可以执行pre-build step

假设您已签入

  • /Debug.Web.Config
  • /Release.Web.Config

您可以编写预构建步骤来检查构建类型并将正确的.config文件复制到

  • /Web.Config

这样的东西
cp $(ConfigurationName).Web.Config $(TargetDir)

另外,ASP.net 4.0将支持多个Web.Configs

http://weblogs.asp.net/gunnarpeipman/archive/2009/06/03/visual-studio-2010-multiple-web-config-versions.aspx

答案 1 :(得分:2)

顺便说一下,使用预构建或后构建步骤在Team Foundation Server下不起作用。它会自动在构建目录上配置安全性,以防止在构建过程中对配置文件进行任何更改,无论是作为预构建事件还是作为构建后事件。使用cp的唯一结果是返回“拒绝访问”错误。

答案 2 :(得分:1)