Estoy construyendo una aplicación modular MVC4, donde cada módulo (= área) es una biblioteca de clases. Los modelos y controladores se compilan en .dll, las vistas se copian en la carpeta apropiada. En tiempo de ejecución, todo funciona bien. En el momento del diseño, queda un problema molesto: al editar una vista de afeitar dentro de una biblioteca de clase, Visual Studio no reconoce el espacio de nombres System.Web.Optimization.Obteniendo System.Web.Optimization para trabajar en una vista razor dentro de una biblioteca de clases
The name "Styles" does not exist in the current context.
The name "Scripts" does not exist in the current context.
He intentado añadir el conjunto a la sección system.web/compilación en la raíz y el web.config interno:
<add assembly="System.Web.Optimization, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
lo intenté sin la versión específica, también. Ambos métodos no resuelven el problema, pero provocaron un error de tiempo de ejecución asp.net (visible en la primera línea de la vista de afeitar):
Could not load file or assembly 'System.Web.Optimization, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
El montaje se hace referencia en el proyecto y 'copia local' está ajustado a 'Verdadero'. También se agrega como un espacio de nombres en la sección de configuración de la máquina de afeitar.
Sospecho que es un problema general que encontraré con otros ensambles en el futuro.
Edit: Hice la configuración general para obtener Intellisense en una vista de máquina de afeitar dentro de una biblioteca de clases. Todo funciona hasta ahora, excepto que VS2010 no reconoce el espacio de nombres de optimización.
Ya lo hice. Intellisense funciona bien, excepto System.Web.Espacio de nombres de optimización – Marcel
¿Notaste ' ' en mi ejemplo? ¿Lo tienes en el tuyo? –
Sí, tengo. Olvidé mencionar eso en la pregunta, ¡lo siento! – Marcel