我有一个简单的ASP.NET MVC网站。它具有调试,测试和发布配置模式。
我们正在使用TFS作为源代码控制和错误跟踪等。很好。
现在,我们即将开始使用Team Builds来自动化一些持续整合。问题是,我们不确定如何制作它,以便如果我们想要进行DEBUG构建或RELEASE构建,它还会将正确的web.config文件放入目标目录。此外,我们将web.config文件的某些部分解压缩为单独的文件(例如,连接字符串部分或机器密钥部分等)。可以将正确的环境文件正确删除到目标目录中。
答案 0 :(得分:3)
您可以执行pre-build step
假设您已签入
您可以编写预构建步骤来检查构建类型并将正确的.config文件复制到
像
这样的东西cp $(ConfigurationName).Web.Config $(TargetDir)
另外,ASP.net 4.0将支持多个Web.Configs
答案 1 :(得分:2)
顺便说一下,使用预构建或后构建步骤在Team Foundation Server下不起作用。它会自动在构建目录上配置安全性,以防止在构建过程中对配置文件进行任何更改,无论是作为预构建事件还是作为构建后事件。使用cp的唯一结果是返回“拒绝访问”错误。
答案 2 :(得分:1)