Estoy trabajando en un marco CSS que puedo incluir en otros proyectos como paquete NuGet.¿Por qué Razor no puede ver ViewBag, Url.Content, etc. cuando la página de diseño está fuera ~/Views/Shared?
mantener las cosas limpias, todo el marco - vistas, estilos, imágenes y páginas maestras/páginas de diseño - se almacena en ~/CssThing/
funciona perfectamente con el WebForms vista motor, pero cuando muevo _layout.cshtml el archivo en ~/CssThing/y luego modificar mi página de la maquinilla de afeitar decir:
@{
Layout = "~/CssThing/_layout.cshtml";
}
que comienza a quejarse de que ViewBag no está definida, o que The name 'Url' does not exist in the current context
, o varios otros fragmentos de rarezas que sugieren que la vista es ya no hereda de la clase base adecuada.
¿Cómo puedo hacer que funcione?
NOTA: El motivo por el que todo se divide de esta manera es que no hay manera de forzar a NuGet a sobrescribir el código existente, y no hay forma de girar una aplicación web MVC3 vacía sin recoger todas las referencias de jQuery, etc. que arriesgar que mi framework se despliegue a medias porque la mitad de los archivos ya estaban presentes, lo mantengo todo separado por completo.
Impresionante. Gracias. –
Eres el hombre –
genial. gracias –