AspNetCompiler, включая файлы, которых нет в моем проекте - PullRequest
3 голосов
/ 17 марта 2011

Я использую msbuild для автоматической сборки и упаковки сайта, готового к развертыванию.Когда я компилирую, а затем публикую свой проект через Visual Studio 2008, все работает нормально.

Однако, когда я использую msbuild, я получаю ошибки, потому что AspNetCompiler пытается скомпилировать файлы aspx и ascx, которые не включены в мой .csproj, но все еще существуют в управлении версиями.

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

Вот моя задача msbuild.

    <AspNetCompiler                
     TargetPath="$(PackageDir)\Web"
     VirtualPath="/"
     PhysicalPath="$(buildDirectory)\Web"
     Force="true"
     />

Спасибо!

1 Ответ

5 голосов
/ 17 марта 2011

Задача AspNetCompiler , которая упаковывает _aspnet_compiler.exe_, компилирует все «компилируемые» файлы в приложении, а не компилирует только эти файлы в .csproj .

Недостатком является то, что ни один из параметров командной строки для исполняемого файла не принимает .csproj в качестве входных данных, только пути.(Я полагаю, можно утверждать, что он будет искать .csproj в каталоге, но это маловероятно, так как это приведет к появлению собственного набора проблем, например, что делать, если кто-то поместил два файла проектав одном каталоге.)

...