【问题标题】:Why is web deploy not using the correct web.config transform?为什么 web 部署不使用正确的 web.config 转换?
【发布时间】:2014-07-01 16:42:12
【问题描述】:

我正在尝试使用名为“CI”的构建配置在 VS 2012 中发布,但是当我执行发布时,在 web.config 上使用了“发布”转换 (web.Release.config)。如何改为应用 web.CI.config? 我认为这将是自动的。

我已经进行了一些实验来证实这一点。

有人看过吗?这是一个(已修复的)错误吗?

【问题讨论】:

  • 4 年后(使用 VS 2015)仍然遇到这个问题。接受的答案对我有用。

标签: asp.net webdeploy


【解决方案1】:

根据您添加配置的方式,有时配置会变得混乱。要解决此问题,请关闭 Visual Studio,在文本编辑器中打开您的解决方案 (.sln) 文件。在GlobalSection(ProjectConfigurationPlatforms) = postSolution 部分下,您可能会看到类似这样的内容

{427E2FA3-1BAE-4A03-A712-C951ECEC45A3}.CI|Any CPU.ActiveCfg = Release|Any CPU {427E2FA3-1BAE-4A03-A712-C951ECEC45A3}.CI|Any CPU.Build.0 = Release|Any CPU

注意CI 等同于Release。把上面改成

{427E2FA3-1BAE-4A03-A712-C951ECEC45A3}.CI|Any CPU.ActiveCfg = CI|Any CPU {427E2FA3-1BAE-4A03-A712-C951ECEC45A3}.CI|Any CPU.Build.0 = CI|Any CPU

在 Visual Studio 中重新加载解决方案并再次尝试发布。

【讨论】:

  • 绝对正确的答案。然而,我发现了一堆这样的错误(模式相同)并且必须确保我修复了所有这些错误。你知道这个问题是在 VS 2013 中存在还是被修复了?
  • 这发生在所有的视觉工作室。当您创建新配置时,您会获得一个“复制设置自”选项,我们通常最终选择现有配置之一。那是我们在 sln 文件中得到这些奇怪设置的时候。我想如果我们选择 create empty 选项,就不会出现这个问题。
  • 感谢您的提醒。这是典型的微软,让我头晕目眩。我必须使用配置管理器显式创建“阶段”配置,以便在发布期间实际使用我的 web.stage.config。
猜你喜欢
  • 2018-09-25
  • 1970-01-01
  • 2015-07-03
  • 2011-06-24
  • 2013-07-15
  • 2011-05-12
  • 1970-01-01
  • 2018-09-13
  • 2023-04-02
相关资源
最近更新 更多