2011-08-09 17 views
17

Estoy buscando información sobre cómo hacer "temas" en MVC 3 de la mejor manera. Supongo que se necesita un motor de vista personalizado para ubicar los archivos de vista, etc.ASP.NET MVC 3, cómo hacer temas bien

También me gustaría que el sistema de temas sea extensible, de modo que si solo es una de las vistas me gustaría cambiar las demás. usa el predeterminado. Algo así como lo hace el proyecto Orchard?

Un imaginar una estructura de carpetas como ~/themes/default/Vistas etc.

he encontrado unos MVC 1.0 y 2.0 ejemplos, pero no es nada que se adapte a mis necesidades exactamente. Necesito algo que se aprovecha de todo el ASP.NET MVC 3.0 características y extras del motor vista Razor :)

Cualquier entrada y las ideas serán realmente pueden apreciar

- Cristiano

Respuesta

15

Salida el motor de blog FunnelWeb.

Su código abierto, el código es muy fácil de leer, utiliza MVC3 y tiene soporte para temas

FunnelWeb está escrito en ASP.NET MVC 3, utilizando el motor de vista de la maquinilla de afeitar. El código fuente es simple y fácil de saltar.

Lo mejor que puede hacer es descargar el source (liberación o dev) y comprobar cómo se implementan los temas.

Y sí, se utiliza un motor de vista personalizada. Salida FunnelWebViewEngine que tiene un código como éste:

lastEngine = new RazorViewEngine(); 
lastEngine.ViewLocationFormats = 
       new[] 
       { 
        "~/Themes/" + settings.Theme + "/Views/{1}/{0}.cshtml", 
+0

Gracias Wal, exactamente lo que estaba buscando :) cada vez más y más sorprendido por las posibilidades de MVC! –

+0

me alegro de poder ayudar. el código fuente está lleno de cosas buenas, eche un vistazo a las carpetas de lib y paquetes para ver todas las bibliotecas de terceros utilizadas. – wal