TFSビルドでカスタムタスクを作成し、プロジェクトのGlobalAssemblyInfo.csファイルを調べて属性(正確にはAssemblyInformationalVersion)を抽出し、ビルドで作成するzipファイルの名前にその値を使用しました。
<UsingTask TaskName="GetAssemblyInformationalVersion.GetAssemblyInformationalVersionTask"
AssemblyFile="$(MSBuildExtensionsPath)\GetAssemblyInformationalVersion.dll" />
DLLの.csファイルには、次の2つのプロパティがあります。
[Required]
public String InfoFile { get; set; }
public String InfoVersion { get; set; }
これが私のタスクへの私の呼び出しです:
<GetAssemblyInformationalVersionTask InfoFile="$(Path to file)\GlobalAssemblyInfo.cs" />
私の意図は、プロパティInfoFileを介してアセンブリ情報ファイルを渡し、必要なもの(C#コードが行う)を見つけて、タスクとして実行することでTFSで参照できるようにプロパティInfoVersionに設定することです。原則として、zipファイルの命名に使用するプロパティInfoVersionを使用します。例えば、
"Package.$(some form of reference to InfoVersion).zip"
しかし、私はこれを実際に達成する方法を見つけることができませんでした。
私の質問は次のとおりです。タスクでプロパティのget部分を呼び出すにはどうすればよいですか?この種のことについてオンラインで書かれたものは何も見つからなかったので、簡単なはずですが、どんな助けでも大歓迎です。