MSBuild и _PublishedWebsites - PullRequest
       13

MSBuild и _PublishedWebsites

2 голосов
/ 21 мая 2009

После того, как MSbuild собрал мое решение (с веб-сайтом asp.net), и проект веб-развертывания создал и поместил веб-сайт в каталог _PublishedWebsites:

C: \ mybuilds \ BUILDNAME \ Daily_20090519.3 \ Release_PublishedWebsites \ МойВебСайт

.

Как мне скопировать это в фиксированный каталог, куда IIS указывает для тестового сайта?

Я нашел множество фрагментов кода, но не могу найти ни одного, который бы учитывал тот факт, что это имя каталога меняется.

Ответы [ 2 ]

1 голос
/ 30 сентября 2009

Я использую другую технику.

<PropertyGroup>
    <BinariesRoot>c:\BinariesForIis\</BinariesRoot>
</PropertyGroup>

c:\BinariesForIis\ будет использоваться для скомпилированных двоичных файлов с прямым выводом (перед копированием в ...\Daily_20090519.3\Release_ ...).

1 голос
/ 22 мая 2009

Это довольно просто. Вы можете отредактировать проект и вставить что-то похожее на следующее.

<PropertyGroup>
  <OutputDest>$(MSBuildProjectDirectory)\..\OutputCopy\</OutputDest>
</PropertyGroup>
<Target Name="AfterBuild">
  <!-- Create an item with all the output files -->
  <ItemGroup>
    <_OutputFiles Include="$(OutputPath)**\*" Exclude="$(OutputPath)obj\**\*" />
  </ItemGroup>
  <!-- You probably don't want to include the files in the obj folder so exclude them. -->

  <Message Text="OutputDest : $(OutputDest)" />
  <Copy SourceFiles="@(_OutputFiles)"
        DestinationFiles="@(_OutputFiles->'$(OutputDest)%(RecursiveDir)%(Filename)%(Extension)')"/>
</Target>

Это то, что вы ищете?

Моя книга: Внутри Microsoft Build Engine: Использование MSBuild и Team Foundation Build

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