【发布时间】:2017-04-30 11:00:48
【问题描述】:
我正在开发一个 ASP.NET 项目,该项目具有在构建时生成的多个 web.config 转换(使用 MsBuild 一次性);每个部署环境一个 .config 文件。
前:
<Target Name="BeforeBuild">
<TransformXml
Source="Web.Base.config"
Transform="Web.DevServer1.config"
Destination="ConfigBuild\Web.DevServer1.config" />
<TransformXml
Source="Web.Base.config"
Transform="Web.QAServer1.config"
Destination="ConfigBuild\Web.QAServer1.config" />
<!-- ... -->
<!-- ... -->
</Target>
每个转换都有几个元素,其值被替换到基本 web.config 文件中。管理层和我担心一个必要的元素可能会在其中一个转换文件中被错误地忽略。
有没有一种方法可以使用 MsBuild 或其他一些 VisualStudio 工具自动验证我们的转换文件是否缺少任何元素?
最好在构建时执行此检查。
【问题讨论】:
-
离题了,但是 WCT 的问题在于,在构建系统之前,一些本质上应该是已知的和静态的东西(比如每个环境的配置)还没有完全定义。如果你想做出改变,你在技术上必须重建。这使得很难将两者分开,这当然应该是这种情况。
-
您解决了这个问题吗,如果问题仍然存在,请随时告诉我。
-
抱歉回复晚了。是的,这个答案很有帮助。
标签: c# asp.net .net visual-studio msbuild