0

我正在尝试使用我的自定义 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 任务的输出包路径?我知道我可以使用复制任务来做到这一点,但我很好奇还有其他(更简单的?)解决方案吗?

4

1 回答 1

0

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

于 2012-11-14T08:18:59.320 回答