【问题标题】:Make Debug/Release Build Configuration with 1 Click Publish dependent on the selected Publish Profile使用 1 单击 Publish 进行调试/发布构建配置,具体取决于所选的发布配置文件
【发布时间】:2011-04-21 01:06:06
【问题描述】:

这几乎是 Link build configuration to a publish profile 的重复,但这个问题没有得到回答...


我的 Web 应用程序有 2 1 单击发布配置:

  1. 测试服务器
  2. 生产服务器

如果我选择 Build => Configuration Manager => Release 然后单击发布按钮,我的应用程序将使用发布配置发布(反之亦然) - 不考虑当前选择的发布配置文件。

但我真正想要的是……

从 1 单击发布设置中设置适当的构建配置。 Test Server 应该与我的调试设置一起发布,Production Server 应该与发布设置一起发布。

我不应该从配置管理器中进行更改。但我愿意。

所以,我有两个问题:

我只是做错了吗?根据 Publish Settings 中的一点说明“使用构建配置管理器更改配置”,这似乎正是它的预期工作方式。

是否有另一种方式来拥有 2 个发布配置文件,一个带有调试配置,一个带有发布配置?


我使用调试/发布构建配置的唯一目的是用于具有不同连接字符串的配置转换。因此,替代但仍然是 1 单击发布解决方案是可以接受的。 :-)

【问题讨论】:

  • 在同一条船上,您有没有找到好的解决方案?
  • 不,它只是不适合这种方法。由于我需要做的就是更改我的应用程序正在使用的连接字符串,我现在只需检查 Environment.MachineName.Equals("MyLiveServersName") 是否并根据它选择我的 ConnectionString。目前,我的只是硬编码到应用程序本身,但您可以(并且可能应该)通过ConfigurationSection 或 appSettings 在 web/app.config 中设置实时服务器的名称。
  • 奇怪的是,他们会将构建配置选择与发布分开,因为这是使用它的时候。感谢您的回复,仍然有帮助!
  • 我不得不说这真的让我很烦。我花了半天时间试图弄清楚为什么我无法连接到数据库。这是因为我使用了错误的配置由于这个问题。
  • 大卫,查看@Jeff 的答案 - 这是解决问题的最佳方法(我刚刚使用过),如果它可以帮助您接受它作为答案。

标签: visual-studio-2010 .net-4.0 web-config publishing one-click-web-publishing


【解决方案1】:

可以通过拥有多个 Web 部署包来实现另一种方式。

基本上创建两个不同的项目,每个项目都会编译和设置 asp.net 构建配置和输出。然后将部署脚本作为其中的一部分。

Bit hacky(希望发布配置文件可以按照您的意愿设置构建配置)。

除此之外,我通常通过 powershell 脚本执行并从我的桌面部署开始,该部署执行所有适当的编译和部署方案。

http://msdn.microsoft.com/en-us/magazine/cc163448.aspx

http://johnnycoder.com/blog/2010/01/07/deploy-aspnet-web-applications-with-web-deployment-projects/

【讨论】:

    【解决方案2】:

    我可以通过安装 Visual Studio Web Publish Update 来实现这一点。此更新允许您将构建配置绑定到特定的发布配置文件。

    http://msdn.microsoft.com/en-us/library/jj161045.aspx

    【讨论】:

    • 这就是你想要的解决方案。
    猜你喜欢
    • 1970-01-01
    • 2012-02-19
    • 2015-09-18
    • 2015-12-22
    • 2014-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多