我正在尝试使用我的自定义 MSBuild 脚本构建一个 WCf 项目。
在 PropertyGroup 我有
<DeployServicesRoot>$(MSBuildProjectDirectory)\$(Configuration)\Services</DeployServicesRoot>
<IntermediateRoot>$(DeployServicesRoot)\obj</IntermediateRoot>
<DevelopmentSymbols>DEVELOPMENT;DEBUG</DevelopmentSymbols>
在项目组中
<Solution Include="..\..\src\WCFProj\WCFProj.csproj" />
<DeployFiles Include="$(DeployServicesRoot)\**\*.*" />
<IntermediateFiles Include="$(IntermediateRoot)\**\*.*" />
和 MSBuild 任务:
<MSBuild Projects="@(Solution)" Properties="DefineConstants=$(DevelopmentSymbols);OutputPath=$(DeployServicesRoot)\bin\;BaseIntermediateOutputPath=$(IntermediateRoot)\Services\;DeployOnBuild=true;DeployTarget=Package"/>
问题是,部署的包位于 obj 子目录中,而不是在 bin 中。在 bin 中只有 *.dll 文件,没有 WCF *.svc 和转换后的 web.config。是否有任何可用的附加参数来设置 MSBuild 任务的输出包路径?我知道我可以使用复制任务来做到这一点,但我很好奇还有其他(更简单的?)解决方案吗?