【问题标题】:It is possible to have different web.config files for a Team Foundation Server project?Team Foundation Server 项目可以有不同的 web.config 文件吗?
【发布时间】:2010-11-28 17:29:49
【问题描述】:

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

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

现在,我们将着手使用 Team Builds 来自动化一些持续集成。问题是,我们不确定如何制作它,因此如果我们想要进行 DEBUG 构建或 RELEASE 构建,它还会将正确的 web.config 文件放到目标目录中。此外,我们将 web.config 文件的某些部分提取为单独的文件(例如,连接字符串部分或机器密钥部分等)。能否将正确的环境文件正确拖放到目标目录中。

【问题讨论】:

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


    【解决方案1】:

    你可以做一个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

    【讨论】:

    • 喜欢 VS2010 中的新东西,等等 :) 根据您上面的想法,这只是将我们的文件复制到目标中的 web.config 文件(使用 cp 命令),因此原始 web.config 是没搞砸吧?
    • 是的,我想这样你的项目中甚至不会有 web.config,只会有 debug.web.config 和 release.web.config,然后每当你构建正确的网络配置将被放置在它的位置。但是,是的,您的源网络配置不应该被弄乱;)当然这没有经过测试,所以请确保一切都在正确的目录中,而不是什么。
    • Visual Studio 2014 即将发布,但仍然不支持本地开发人员的 muti webconfig。多疼啊
    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-04-18
        • 1970-01-01
        • 2010-11-24
        • 1970-01-01
        • 2011-12-04
        • 1970-01-01
        • 1970-01-01
        • 2011-01-12
        相关资源
        最近更新 更多