我有一个解决方案,包括三个Web项目(以及许多类库项目).Web项目都使用Web.config转换来指定每个环境的配置.
我有Web.config转换多个构建配置文件,名为Web.UAT.config,Web.Staging.config和Web.Release.config
我正在使用带有以下参数的MSBuild从我的CI服务器构建和部署项目:
/t:Clean,Build /p:Configuration=UAT;DeployOnBuild=True;PublishProfile=UAT
Run Code Online (Sandbox Code Playgroud)
对于三个项目中的一个,web.config转换似乎应用两次,标记的元素xdt:Transform="Insert"出现两次.查看构建输出,似乎所有三个项目都运行以下目标:
PreTransformWebConfig
TransformWebConfigCore
PostTransformWebConfig
PreProfileTransformWebConfig
Run Code Online (Sandbox Code Playgroud)
但有问题的项目也会运行这些目标(紧接在上面列出的目标之后):
ProfileTransformWebConfigCore
PostProfileTransformWebConfig
Run Code Online (Sandbox Code Playgroud)