我正在寻找有关如何以最佳方式在 MVC 3 中执行“主题”的输入。我想需要一个自定义 View 引擎来处理定位 View 文件等。
我还希望主题系统是可扩展的,因此如果它只是其中一个 View ,我想更改其他 View 仍然使用默认值。有点像 Orchard 项目吗?
想象一个文件夹结构,如 ~/Themes/Default/Views 等。
我找到了一些 MVC 1.0 和 2.0 示例,但没有一个完全符合我的需要。我需要利用 Razor View 引擎的所有 ASP.NET MVC 3.0 功能和好东西的东西:)
任何输入和想法都将不胜感激
--
基督教
最佳答案
查看 FunnelWeb博客引擎。
开源,代码可读性强,使用MVC3,支持主题
FunnelWeb is written in ASP.NET MVC 3, using the Razor view engine. The source code is simple and easy to jump in to.
最好的办法是下载source (发布或开发)并检查主题是如何实现的。
是的,使用了自定义 View 引擎。查看
FunnelWebViewEngine
它有这样的代码:lastEngine = new RazorViewEngine();
lastEngine.ViewLocationFormats =
new[]
{
"~/Themes/" + settings.Theme + "/Views/{1}/{0}.cshtml",
关于ASP.NET MVC 3,如何正确做主题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6994200/