あなたが持っている問題は、タスクが実行される前に基準を使用しているWithCriteria
過負荷で評価されるためです。
一般に、これはタスクが実行される前に作成された定数/状態で問題ありません。 WithCriteria
で
は、状態がセットアップまたは以前の時に変更&を作成した場合は動作しませんどの、タスクが作成されたとして、それが評価されていますbool
を取るとoneあなたは
public static CakeTaskBuilder<T> WithCriteria(
this CakeTaskBuilder<T> builder,
bool criteria
)
の上に使用している2つのオーバーロードがありますあなたはこれがロード上でWH Func<bool>
基準を取るbelow過負荷
public static CakeTaskBuilder<T> WithCriteria(
this CakeTaskBuilder<T> builder,
Func<bool> criteria
)
を使用するコードこの変更を解決するためのタスク、タスクが実行される直前に評価されるため、タスクの実行前に作成または変更された状態にアクセスできます。
だからあなたの問題に対する修正は自分の判断基準の前()=>
を追加することであり、それは怠惰になるだろうが、このようにロードされた:
Task("Test-NUnit")
.WithCriteria(()=>DirectoryExists(parameters.Paths.Directories.NUnitTestResults))
.Does(()=>
{
});
おかげで、説明したとおりに動作します! –