2

ServiceReferences.ClientConfigSilverlight プロジェクト (つまり-file)の構成ファイルの変換に行き詰まっています。.csproj ファイルを手動で編集して変換ファイルを追加する方法について、いくつかのソース (たとえば、このソース) に従いましたが、CI サーバーで動作させることができません。

.csproj ファイルへの変更は次のとおりです。

<UsingTask TaskName="TransformXml" AssemblyFile="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.Tasks.dll" />
<Target Name="BeforeBuild" Condition="exists('ServiceReferences.$(Configuration).ClientConfig')">
<TransformXml Source="ServiceReferences.ClientConfig" Destination="$(TargetDir)\ServiceReferences.ClientConfig" Transform="ServiceReferences.$(Configuration).ClientConfig" />
<ItemGroup>
  <Content Remove="ServiceReferences.ClientConfig" />
  <ContentWithTargetPath Include="$(TargetDir)\ServiceReferences.ClientConfig">
    <TargetPath>ServiceReferences.ClientConfig</TargetPath>
  </ContentWithTargetPath>
</ItemGroup>
</Target>
<Target Name="AfterBuild" />

ローカル クライアントの VS2010 で Silverlight プロジェクトをビルドすると、構成ファイルの変換は正常に機能します。生成された XAP ファイルを開いて、ServiceReferences.ClientConfig変換されていることを確認できます。したがって、変換ファイルを問題として除外します。

しかし、CI サーバーで Silverlight プロジェクトをビルドすると、CI サーバーでServiceReferences.ClientConfig生成された XAP ファイルに変換されないままになります。

ビルド定義に関しては、私が見る限り大丈夫です。DeployConfigurationセクションでProcesses、有効な構成に設定されています。(このエントリの構成の名前を無効なものに変更すると、CI サーバーは文句を言います。したがって、これまでのところ動作しています...)Transform Configuration Files同じセクションで true に設定されています。

どんなアイデアでも大歓迎です!

4

1 に答える 1