用msbuild构建一个wcf项目

时间:2012-11-13 09:19:50

标签: wcf msbuild

我正在尝试使用我的自定义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任务的输出包路径?我知道我可以使用复制任务来完成它,但我还有其他(更容易?)解决方案吗?

1 个答案:

答案 0 :(得分:0)

在MSBuild属性中,我必须在DeployTarget之后添加_PackageTempDir = $(DeployServicesRoot)。