Указание версии сборки всех проектов в сценарии wdproj веб-развертывания - PullRequest
0 голосов
/ 23 декабря 2010

У меня есть проект веб-развертывания .wdproj, созданный с VS2010, который содержит ссылки на другие библиотеки классов, например:

<Project ToolsVersion="4.0" DefaultTargets="Build" 
         xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <ProjectReference Include="..\Path\Proj1.csproj">
      <Project>{GUID-HERE}</Project>
      <Name>Proj1</Name>
    </ProjectReference>
    <ProjectReference Include="..\Path\Proj2.csproj">
      <Project>{GUID-HERE}</Project>
      <Name>Proj2</Name>
    </ProjectReference>

Их много.Я хочу иметь возможность запускать msbuild /t:Rebuild /p:Configuration=Release и иметь все сборки всех включенных проектов, скомпилированных в указанной версии.Ничего особенного, только статического, как 2.5.6.0 и указан один раз в файле wdproj.Я не хочу открывать 30 файлов вручную.

Я посмотрел MSBuild Community Task и MSBuildExtension Pack и не могу заставить что-либо работать.Сборка работает без ошибок.

У кого-нибудь есть пример того, как это можно сделать?

Это попытка с расширениями MSBuild (адаптировано из включенного примера), которая не работает:

  <Import Project="$(MSBuildExtensionsPath)\ExtensionPack\4.0\MSBuild.ExtensionPack.VersionNumber.targets"/>

  <Target Name="Build">
    <MSBuild.ExtensionPack.Framework.AssemblyInfo
      ComVisible="true"
      AssemblyInfoFiles="VersionInfo.cs"
      AssemblyFileMajorVersion="2" 
      AssemblyFileMinorVersion="5"
      AssemblyFileBuildNumber="6"
      AssemblyFileRevision="0"
    />

  </Target>

MSBuild определенно просматривает элемент MSBuild.ExtensionPack.Framework.AssemblyInfo, потому что, если имена атрибутов неверны, сборка завершится неудачно.Это нормально, но ни одна из версий на указанных сборках не изменилась.Все номера версий на сборках страниц ASP.NET с веб-сайта - 0.0.0.0.

1 Ответ

0 голосов
/ 24 декабря 2010

Возможно, вам не хватает указать атрибуты CodeLanguage и OutputFile?Я думаю, что задача AssemblyInfo предназначена для генерации (замены) исходного файла перед компиляцией.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...