2010-10-10 1 views
2

Можно ли включать задачи в сборку в VS 2010, например, обновить номер версии сборки, без необходимости запуска внешнего приложения через событие сборки? То есть, я предпочел бы, если бы я мог написать расширение для VS 2010, которое будет прослушивать событие «начать сборку» и запустить задачу, например. макрос или плагин, который обновляет свойство версии сборки.VS 2010 действия по созданию без внешних исполняемых файлов

ответ

4

Вы можете написать custom MSBuild task.

+0

Я строю одно прямо сейчас, а также узнаю CodeDOM для «правильного» способа редактирования файла AssemblyInfo.cs. Хорошая вещь. Я предполагаю, что для добавления задачи требуется ручное редактирование файла csproj? – ProfK

+0

Да, один способ - отредактировать csproj, но вы также можете отредактировать более глобальный '$ (MSBuildToolsPath) \ Microsoft.CSharp.targets', который будет применяться ко всем проектам и всем решениям. –

2

Или вы могли бы использовать существующую надстройку. Here - один из доступных на CodePlex, который потенциально может удовлетворить ваши потребности либо A) достижением именно того, что вы хотите, либо B), позволяющим вам понять, как вы могли бы достичь того, чего хотите.

На стороне примечания, если вы увеличиваете номер версии/s, все, что вам нужно, VS все равно должен поддерживать использование символа подстановки, чтобы сделать это с помощью AssemblyVersion в файле информации о сборке. Например:

[assembly: AssemblyVersion("1.*")] 
+0

Я на самом деле пытаюсь избежать автоматического приращения, но спасибо за ссылку, это выглядит хорошо. – ProfK