Je développe une tâche MSBuild personnalisée en héritant de la classe Task de base. Ma tâche appelle la tâche de copie déclarée dans Microsoft.Build.Tasks.dll
définissant la propriété DestinationFolder dans le processus. Ma tâche personnalisée a une propriété appelée DestinationFolder déclarée commeMSBuild get% (RecursiveDir) directive du paramètre de tâche personnalisée
public ITaskItem DestinationFolder { get; set; }
Lorsque vous appelez cette tâche à partir d'un build/fichier de projet que je pourrais passer un paramètre tel que
<MyTask DestinationFolder="C:\Development\Test\%(RecursiveDir)"
le problème que j'ai est que, lorsque cette tâche exécute, la propriété DestinationFolder semble ne pas avoir connaissance du bit %(RecursiveDir)
, semble plutôt être définie sur C:\Development\Test\Bin
.
This question semble suggérer qu'il n'y a pas de solution à ce problème. Est-ce vraiment le cas? Je me demandais s'il est possible de déclarer la propriété comme une simple chaîne puis de créer un objet TaskItem à la volée et si la chaîne DestinationFolder contient l'instruction spéciale %(RecursiveDir)
pour ensuite configurer l'objet TaskItem en conséquence.