【问题标题】:Publish Web.Release.config to IIS from VS, web deploy, one-click publish从VS发布Web.Release.config到IIS,web部署,一键发布
【发布时间】:2011-08-02 23:33:29
【问题描述】:

我的 web.config 中有一些 appSetting 条目。

我在 web.Release.config 中有一些不同的条目,我想在何时推送到 IIS(7) 我发布。 (我是在VS2010中使用web deploy方式一键发布)。

当我发布到 IIS 并运行应用程序时,应用程序从 web.config 而不是 web.release.config 获取值。

(我在发布时处于发布配置中)。

我错过了什么?

[编辑]

web.release.config 的应用设置部分:

<appSettings>
    <add key="StylesheetPath" value="http://mySite/Stylesheet/"/>
    <add key="ImagePath" value="http://mySite/Stylesheet/images/"/>
  </appSettings>

谢谢

【问题讨论】:

  • 您可以发布您的 web.release.config 文件的一部分吗?我想查看 appSettings 节点(如果您的值包含在该节点中)
  • 没问题,已添加到原帖中

标签: asp.net iis web-deployment


【解决方案1】:

在 web.release.config 的 appSettings 节点中,添加一个转换属性

<appSettings xdt:Transform="Replace">
<add key="StylesheetPath" value="http://mySite/Stylesheet/"/>
<add key="ImagePath" value="http://mySite/Stylesheet/images/"/>
</appSettings>

这个 xdt:Transform 告诉配置生成器在你的 web.config 中获取 appSettings 节点并将其替换为这个节点。当您部署它时,应该更新 web.config。

【讨论】:

  • 这行得通吗?可以在此处找到有关转换的更多信息:weblogs.asp.net/srkirkland/archive/2009/10/13/…
  • 是的,这正是我想要的。喜欢一键发布,这是一个很好的附加功能,可以快速轻松地部署到开发服务器。再次感谢您这么快的回答。
  • 一旦他们将其集成到 Azure Publishing 中,我会特别高兴!
  • 所以我收集到这两个文件(web.config 和 web.release.config)被上传到 IIS。如果我有一个 web.debug.config,它也会被上传...但是 IIS 怎么知道选择哪个(调试与发布)?
  • 实际上是部署根据构建配置进行转换。
猜你喜欢
  • 2015-07-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多