展開プロセスを作り直すにあたり、既存のバッチ ファイルの代わりに MSBuild プロジェクトを使用することにしました。主要な要素はすべて整っており、1 つか 2 つのステップを切り取ろうとしましたが、思わぬ障害に遭遇しました。
CombinePath タスクを使用して OutputPath というプロパティを作成しています。作成後は問題なくアクセスできますが、それをどのように活用すればよいか途方に暮れています。検討:
<CombinePath BasePath ="$(DeployFolderRoot)" Paths ="$(DeployReleaseFolder)$(ReleaseFolderFormatted)" >
<Output TaskParameter ="CombinedPaths" ItemName ="OutputFolder"/>
</CombinePath>
<MakeDir Directories="@(OutputFolder)" />
<MakeDir Directories="@(OutputFolder)\Foo" />
<MakeDir Directories="@(OutputFolder)\Bar" />
コマンド 2 と 3 は、配列を参照して文字列と連結しようとしているため失敗します。プロパティを作成して @(OutputFolder) を割り当てると、$ アクセサーで参照できるプロパティではなく、単に別のアイテム グループが生成されます。い回避策がありますが、これをいくらか解決したいと思います。
ありがとう、
-ホセ