Я хочу, чтобы задача msbuild компилировала представления, чтобы я мог видеть, есть ли ошибки времени компиляции во время ... компиляции. Любые идеи?
asp.net
asp.net-mvc
msbuild
Джон Оксли
источник
источник
Ответы:
Честно говоря, я бы порекомендовал пакет RazorGenerator nuget . Таким образом, ваши представления получают
.designer.cs
файл, сгенерированный при их сохранении, и в дополнение к получению ошибок времени компиляции для ваших представлений, они также предварительно компилируются в сборку (= более быстрый прогрев), и Resharper также предоставляет некоторую дополнительную помощь.Чтобы использовать это, включите пакет nuget RazorGenerator в свой проект ASP.NET MVC и установите расширение « Razor Generator » в разделе « Инструменты» → «Расширения и обновления» .
Мы используем это, и издержки на компиляцию при таком подходе намного меньше. Вдобавок ко всему, я бы, вероятно, порекомендовал .NET Demon от RedGate, что еще больше существенно снижает время компиляции.
Надеюсь это поможет.
источник
Из документа readme word doc для RC1 (не индексируется Google)
Шаг посткомпиляции компилятора ASP.NET
В настоящее время ошибки в файле представления не обнаруживаются до времени выполнения. Чтобы позволить вам обнаруживать эти ошибки во время компиляции, проекты ASP.NET MVC теперь включают свойство MvcBuildViews, которое по умолчанию отключено. Чтобы включить это свойство, откройте файл проекта и установите для свойства MvcBuildViews значение true, как показано в следующем примере:
Примечание. Включение этой функции увеличивает время сборки.
Вы можете обновить проекты, созданные в предыдущих выпусках MVC, чтобы включить проверку представлений во время сборки, выполнив следующие действия:
<PropertyGroup>
элемент:<MvcBuildViews>true</MvcBuildViews>
<Target Name="AfterBuild">
элемент и измените его так, чтобы он соответствовал следующему:источник
Вы можете использовать aspnet_compiler для этого:
где " / Virtual / Application / Path / Or / Path / In / IIS / Metabase " выглядит примерно так: " / MyApp " или " / lm / w3svc2 / 1 / root / "
Также на MSDN есть задача AspNetCompiler , показывающая, как интегрировать aspnet_compiler с MSBuild:
источник
Кроме того, если вы используете Resharper, вы можете активировать Solution Wide Analysis, и он обнаружит любые ошибки компилятора, которые могут возникнуть в файлах aspx. Это то, что мы делаем ...
источник
В следующем выпуске ASP.NET MVC (будет выпущен в январе или около того) должна быть задача MSBuild, которая компилирует представления, так что вы можете подождать.
Посмотреть объявление
источник
Ответ, приведенный здесь, работает для некоторых версий MVC, но не для других.
Простое решение работало для MVC1, но при обновлении до MVC2 представления больше не компилировались. Это было связано с ошибкой в файлах проекта сайта. Смотрите эту взломанную статью.
Смотрите это: http://haacked.com/archive/2011/05/09/compiling-mvc-views-in-a-build-environment.aspx
источник
Построить> Выполнить анализ кода
Горячая клавиша: Alt+F11
Помогли мне ловить бритвенные ошибки.
источник
Использование расширения Power Tools ( бесплатно ) для Visual Studio немного помогает . Конкретно
Solution Error Visualizer
особенность. При этом ошибки компиляции отмечаются визуально в обозревателе решений (в исходном файле, где обнаружена ошибка). Однако по какой-то причине эта функция не работает, как с другими ошибками где-либо еще в коде.В представлениях MVC любые ошибки во время компиляции будут по-прежнему подчеркнуты красным в их соответствующих файлах .cs, но сигнализация этих ошибок не распространяется вверх в обозревателе решений (ни в коем случае, даже в исходном файле, в котором они содержатся).
Спасибо за
BlueClouds
исправление моего предыдущего заявления.Я только что сообщил об этом как о проблеме в проекте расширения github.
источник