Проверка MvcBuildViews превосходна, но она добавляет 5-10 секунд штрафа за создание веб-приложения, если оно достаточно сложное. Он не кэширует выходные данные компиляции, поэтому каждый раз выполняет полную компиляцию всех ваших представлений.
Я нашел хороший компромисс, следуя совету выше и добавив атрибут Condition:
<MvcBuildViews Condition=" '$(Configuration)' == 'Release' ">true</MvcBuildViews>
Мы ожидаем, что ReSharper в любом случае будет отмечать любые ошибки в представлениях, и разработчик всегда может встроить конфигурацию выпуска в качестве теста - у нас есть сценарий «preflight», который запускают разработчики, чтобы они могли легко удостовериться, что целевой пакет работать и так далее - и если все, что не удается, сервер сборки будет ловить его.
Возможно, этот трюк очевиден, но я только начал изучать msbuild должным образом, а не писать сценарии Powershell для этих задач. Надеюсь, это кому-нибудь пригодится.