我正在尝试使用我的自定义MSBuild脚本构建一个WCf项目。
在PropertyGroup中我有
<DeployServicesRoot>$(MSBuildProjectDirectory)\$(Configuration)\Services</DeployServicesRoot>
<IntermediateRoot>$(DeployServicesRoot)\obj</IntermediateRoot>
<DevelopmentSymbols>DEVELOPMENT;DEBUG</DevelopmentSymbols>
在ItemGroup中
<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任务的输出包路径?我知道我可以使用复制任务来完成它,但我还有其他(更容易?)解决方案吗?
答案 0 :(得分:0)
在MSBuild属性中,我必须在DeployTarget之后添加_PackageTempDir = $(DeployServicesRoot)。