ServiceReferences.ClientConfig
Silverlight プロジェクト (つまり-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 に設定されています。
どんなアイデアでも大歓迎です!