【发布时间】:2016-02-09 05:15:54
【问题描述】:
我一直使用 web.config 转换,当我创建一个新站点/项目时,我经常复制以前的站点,根据需要在 csproj 中重命名 *.csproj 并将 oldsite 重命名为 newsite。我经常这样做,但由于某种原因,我的一个项目不会在发布时运行它的转换。我什至不知道在这篇文章中要向您展示什么,所以我会根据您想要看到的内容根据需要更新问题。谷歌搜索我没有找到太多。但这里是我可以告诉你的:
1) 我的 web.config没有有命名空间,我的 web.release.pittsburgh.config 有“transform”命名空间。
2) 我将一个工作的 web.release.pittsburgh.config 的内容复制到一个没有工作的文件中,但它仍然没有工作。
3) 当我发布一个工作站点时,在输出中,我在“发布管道收集文件阶段”之类的行之后看到了一些“Web 配置转换”输出,并且我看到了一个步骤“使用转换的 Web.config.. .' 最后是“发布管道转换阶段”输出行。在我没有工作的项目中,我从“发布管道收集文件阶段”直接进入“发布管道转换阶段”,中间没有任何内容。
我尝试比较 *.csproj 文件以寻找任何明显的东西,但我没有看到任何东西。
如果您有任何想法或想要任何具体信息,请告诉我。
【问题讨论】:
-
不确定这是否有帮助。试一试。转到 Visual Studio 中的“配置管理器”。查找有效的解决方案配置并单击“新建”并添加“release.pittsburgh”配置。
-
我已经有了。我还删除了所有 web.config 转换,右键单击 web.config 并说“添加转换”,它添加了 web.Release.Pittsburgh.config。
-
@RajKarri 因此,即使您的建议不是解决方案,它也帮助我找到了解决方案。不知道你应该回答还是我应该回答我自己的问题,但是当我在配置管理器中查看 Release.Pittsburgh 时,由于某种原因,客户端站点的配置是“Release”而不是“Release.Pittsburgh”。当我翻转该设置时,事情开始起作用了。
-
很高兴听到您能够查明问题。
标签: asp.net web-deployment web.config-transform