【发布时间】:2011-04-21 01:06:06
【问题描述】:
这几乎是 Link build configuration to a publish profile 的重复,但这个问题没有得到回答...
我的 Web 应用程序有 2 1 单击发布配置:
- 测试服务器
- 生产服务器
如果我选择 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