Я хочу создать пакет nuget, который добавляет шаг BeforeBuild в мой csproj, используя созданную мной пользовательскую задачу MSBuild. В идеале я хочу:
- Добавьте новую цель в файл csproj (MyCustomBeforeBuildTarget)
- Добавьте цель BeforeBuild, если ее еще нет
- Отредактируйте атрибут BeforeBuild DependsOnTargets, чтобы включить мою пользовательскую цель
Итак, после установки мой csproj должен иметь следующее:
<Target Name="MyCustomBeforeBuildTarget" Condition="SomeCondition">
<MyCustomTask />
</Target>
<Target Name="BeforeBuild" DependsOnTargets="MyCustomBeforeBuildTarget">
</Target>
Кроме того, было бы неплохо, если бы при удалении моего пакета пользовательская цель тоже исчезала, хотя я добавил условие, которое должно заставить ее игнорировать цель, если моя пользовательская библиотека DLL задачи отсутствует.
Какой самый простой сценарий установки Powershell nuget, который я могу написать, добавит мою пользовательскую цель? У меня есть ощущение, что сценарии PowerShell здесь могут стать частью решения, но мне не хватает Опыт PowerShell, чтобы знать, как на самом деле использовать их для редактирования файла csproj.