Eu quero uma tarefa msbuild para compilar as visualizações para que eu possa ver se há erros de tempo de compilação no momento ... tempo de compilação. Alguma ideia?
asp.net
asp.net-mvc
msbuild
John Oxley
fonte
fonte
Respostas:
Eu francamente recomendaria o pacote de pepitas RazorGenerator. Dessa forma, suas visualizações têm um
.designer.cs
arquivo gerado quando você as salva e, além de obter erros de tempo de compilação para as visualizações, elas também são pré-compiladas no assembly (= aquecimento mais rápido) e o Resharper também fornece ajuda adicional.Para usar isso, inclua o pacote de nuget RazorGenerator no projeto ASP.NET MVC e instale a extensão " Razor Generator " no item em Ferramentas → Extensões e atualizações .
Usamos isso e a sobrecarga por compilação com essa abordagem é muito menor. Além disso, eu provavelmente recomendaria o .NET Demon da RedGate, o que reduz ainda mais o impacto no tempo de compilação.
Espero que isto ajude.
fonte
Do documento leia-me doc para RC1 (não indexado pelo google)
Etapa de pós-compilação do compilador ASP.NET
Atualmente, erros em um arquivo de exibição não são detectados até o tempo de execução. Para permitir a detecção desses erros no momento da compilação, os projetos do ASP.NET MVC agora incluem uma propriedade MvcBuildViews, que está desabilitada por padrão. Para habilitar essa propriedade, abra o arquivo do projeto e defina a propriedade MvcBuildViews como true, conforme mostrado no exemplo a seguir:
Nota A ativação desse recurso adiciona alguma sobrecarga ao tempo de compilação.
Você pode atualizar os projetos criados com liberações anteriores do MVC para incluir a validação de visualizações em tempo de construção, executando as seguintes etapas:
<PropertyGroup>
elemento mais alto :<MvcBuildViews>true</MvcBuildViews>
<Target Name="AfterBuild">
elemento e modifique-o para corresponder ao seguinte:fonte
Você pode usar aspnet_compiler para isso:
onde " / Virtual / Aplicativo / Caminho / Ou / Caminho / No / IIS / Metabase " é algo como isto: " / MyApp " ou " / lm / w3svc2 / 1 / root / "
Também há uma tarefa AspNetCompiler no MSDN, mostrando como integrar aspnet_compiler ao MSBuild:
fonte
Além disso, se você usar o Resharper, poderá ativar o Solution Wide Analysis e ele detectará quaisquer erros do compilador que você possa ter nos arquivos aspx. Isso é o que fazemos...
fonte
A próxima versão do ASP.NET MVC (disponível em janeiro mais ou menos) deve ter a tarefa MSBuild que compila visualizações, portanto, você pode esperar.
Ver anúncio
fonte
A resposta dada aqui funciona para algumas versões do MVC, mas não para outras.
A solução simples funcionou para o MVC1, mas na atualização para o MVC2 as visualizações não estavam mais sendo compiladas. Isso ocorreu devido a um erro nos arquivos de projeto do site. Veja este artigo haacked.
Veja isto: http://haacked.com/archive/2011/05/09/compiling-mvc-views-in-a-build-environment.aspx
fonte
Compilar> Executar análise de código
Tecla de atalho: Alt+F11
Ajudou-me a detectar erros do Razor.
fonte
Usar a extensão Ferramentas de Produtividade do Visual Studio ( gratuita ) ajuda um pouco . Especificamente, o
Solution Error Visualizer
recurso. Com ele, erros de compilação marcados visualmente no gerenciador de soluções (no arquivo de origem em que o erro foi encontrado). Por alguma razão, no entanto, esse recurso não funciona como outros erros em qualquer outro lugar do código.Nas exibições do MVC, quaisquer erros em tempo de compilação ainda serão sublinhados em vermelho em seus respectivos arquivos .cs, mas a sinalização desses erros não é propagada para cima no Solution Explorer (de maneira alguma, mesmo que não no arquivo de origem).
Obrigado por
BlueClouds
corrigir minha declaração anterior.Acabei de relatar isso como um problema no projeto github da extensão.
fonte