Добавление файлов в проект программно VS 2010 - PullRequest
1 голос
/ 09 сентября 2011

У меня есть сборка развертывания .exe, которая минимизирует и объединяет файлы JS и CSS. Все отлично работает, за исключением того, что когда я публикую свой сайт, эти файлы не публикуются. Это связано с тем, что эти файлы добавляются в соответствующие каталоги в моем проекте, но не включаются в проект.

Я знаю, что есть возможность включить все файлы при публикации, но я не хочу этого делать. Я просто хочу иметь возможность программно добавлять эти пару файлов JS и CSS в решение в процессе развертывания.

Ответы [ 2 ]

0 голосов
/ 10 сентября 2011

В итоге я просто записал XML в мой файл csproj.

0 голосов
/ 09 сентября 2011

Вы можете попробовать добавить собственную цель MSBuild в ваш .csproj, который будет динамически добавлять файлы в проект в процессе сборки. Они не будут отображаться в IDE, но я думаю, это то, что вы хотите. Следующая цель должна добавить файл test.css, который будет включен в процесс публикации:

<Target Name="CustomContent" AfterTargets="ResolveReferences">
   <ItemGroup>
      <Content Include="Content\Styles\test.css"/>
   </ItemGroup>
</Target>

Вы бы заменили содержимое атрибута Include на файлы, которые вы хотите добавить в развертывание. Вы также можете изменить название цели на любое другое. Он должен находиться в нижней части вашего файла .csproj, чуть выше закрытия элемента Project. Я подтвердил это в проекте MVC3, но он также должен работать и в проектах ASP.NET.

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