MVCBuildViews no funciona correctamente

Así que edité mi archivo csproj en una aplicación MVC 3 RTM para establecer la siguiente propiedad:

true 

Esto debería hacer que mis vistas se cumplan durante la comstackción y forzar un error de comstackción si mi vista se rompe. Este es el único cambio que hice, sin embargo, cuando bash crear la aplicación, aparece el siguiente error:

Es un error utilizar una sección registrada como allowDefinition = ‘MachineToApplication’ más allá del nivel de la aplicación. Este error puede deberse a que un directorio virtual no está configurado como una aplicación en IIS.

El proyecto se comstack y se ejecuta con éxito si cambio de nuevo a falso,

Las siguientes son las tareas de comstackción configuradas en el archivo csproj (estas nunca fueron editadas manualmente, fueron agregadas por Visual Studio 2010)

     -->    

¿Me estoy perdiendo de algo? ¿Cómo configuro correctamente MVC 3 / Visual Studio 2010 para validar mis vistas en tiempo de comstackción?

Tuve este problema hace unos días y lo solucioné al eliminar la carpeta obj / Debug. La limpieza del proyecto también funciona. Aunque no tengo idea de la causa del problema.

Vea la respuesta de Joe Cartano para una solución más permanente.

Este problema se produce cuando hay salida de proyecto web (archivos web de configuración con plantilla o publicación temporal) en la carpeta obj. El comstackdor de ASP.NET utilizado no es lo suficientemente inteligente como para ignorar cosas en la carpeta obj, por lo que arroja errores en su lugar.

Otra solución es desarticular la salida de publicación justo antes de llamar a . Abra su .csproj y cambie esto:

    

a esto:

          

Esto eliminará todos los archivos web.configs en \ obj, así como todas las carpetas de PackageTmp en \ obj.

Cuando obtiene este error, ¿tiene otro archivo web.config en su carpeta obj? Si está utilizando MSDeploy esto podría ayudar: http://blogs.msdn.com/b/webdevtools/archive/2010/05/14/the-aspnet-compiler-build-task-in-visual-studio-2010-asp -net-mvc-2-projects.aspx , si no, tal vez otro web.config está siendo generado por alguna herramienta que esté ejecutando.

Esto es lo que funcionó para mí. Opcionalmente, puede especificar una condición con la configuración.