2010-01-07 1 views
2

Я ищу, чтобы использовать задачу fileUpdate из msbuildtasks.tigris.org, чтобы изменить изображение src как часть нашего проекта веб-настройки, чтобы они указывали на статический под-домен img (или позже CDN)
я могу запустить задачу в рамках данного проекта с:msbuild fileupdate setup project

<Import Project="$(MSBuildExtensionsPath)\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets" /> 
<Target Name="AfterBuild"> 
<FileUpdate 
    Files="basic.css" 
    Regex="/images/([^\)]*)" 
    ReplacementText="http://img.domain.com/images/$1" /> 
</Target> 

Однако, я не хочу, чтобы перезаписать исходный файл CSS, но хочу запустить это как часть нашего проекта развертывания, который производит MSI. Это делается с помощью проекта веб-установки (.vdproj), который также использует проект пользовательских действий, который просто стандартный .csproj

Мой вопрос:
1. Как я могу выполнить эту задачу в проекте установки так что я заменяю содержимое в файлах, которые входят в .msi?
2. Есть ли способ использовать подстановочные знаки для файлов - в идеале я хочу сказать это сделать для ВСЕХ файлов .css?

Спасибо за вашу помощь

ответ

11

Для того, чтобы достичь этого вам нужно использовать группу элементов, чтобы создать список для вас

<Import Project="$(MSBuildExtensionsPath)\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets" /> 
<Target Name="AfterBuild"> 

<ItemGroup> 
    <CssFiles Include='$(SolutionRoot)\**\*.css' /> 
</ItemGroup> 

<FileUpdate 
    Files="@(CssFiles)" 
    Regex="/images/([^\)]*)" 
    ReplacementText="http://img.domain.com/images/$1" /> 
</Target> 

 Смежные вопросы

  • Нет связанных вопросов^_^