2011-08-09 26 views
17

我正在寻找关于如何在MVC 3中以最佳方式完成“主题”的输入。我想自定义视图引擎需要照顾定位视图文件等ASP.NET MVC 3,如何做主题权利

我也希望主题系统是可扩展的,所以如果它只是其中一个意见,我想改变其他人仍然使用默认值。有点像果园项目吗?

一个想象的文件夹结构是怎样的〜/主题/默认/

我已经找到了几个MVC 1.0和2.0的例子,但没有适合我的需要究竟意见等。我需要的东西通吃的优势ASP.NET MVC 3.0功能和糖果的Razor视图引擎:)

任何输入和理念将真正理解

的 - 基督教

回答

15

退房博客引擎FunnelWeb

其开源,代码可读性很强,它使用MVC3,它具有主题

FunnelWeb是写在ASP.NET MVC 3,使用Razor视图引擎支持。源代码很简单,并且很容易进入。

做的最好的事情就是下载source(释放或开发),并检查的主题是如何实现的。

是的,使用自定义视图引擎。检查出FunnelWebViewEngine它有这样的代码:

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

谢谢沃尔,正是我一直在寻找:)越来越惊讶的MVC的可能性! –

+0

很高兴我能帮上忙。源代码充满了好东西,看看lib和packages文件夹以查看所有使用的第三方库。 – wal