Asp.Net MVC:基于cookie的用户自选视图引擎实现
2009-02-11 09:44
417 查看
作者:
leven
日期:
2008-11-27 17:38:47
在我以前的文章中详细介绍了目前mvc框架中的视图引擎管理,这个视图引擎可以方便的实现系统多视图引擎的管理,让系统可以轻松更好视图引擎,但是,在一些应用,比如bbs,多用户blog中,往往需要提供用户自选skin的功能,比如bbs中某个用户通过菜单可以随意更换自己的skin设置,而mvc框架的默认视图管理器对这个要求就无法做到了,而本文则是使用viewengine规则来实现一个用户自选视图引擎的功能.
在本系统中,用户选择的skin信息将保存在cookie中,这意味着可以让用户控制这个选择保存的时间.
首先,这个系统仍然是基于ViewEngine,我们在以前的文章中可以看到,mvc框架用一个AutoViewEngine来管理存在的所有ViewEngine,那么我们也可以考虑用一个SelectViewEngine来管理一系列我们特定的可选择ViewEngine.下面先看看这个核心部分的类:
从上面的代码可以看到,默认的不同skin分别放在~/skins目录下,不同的SelectWebFormViewEngine对应不同的子目录.
然后我们实现一个基本的SelectViewEngine来管理所有的可选择ViewEngine,关键代码如下:
leven
日期:
2008-11-27 17:38:47
在我以前的文章中详细介绍了目前mvc框架中的视图引擎管理,这个视图引擎可以方便的实现系统多视图引擎的管理,让系统可以轻松更好视图引擎,但是,在一些应用,比如bbs,多用户blog中,往往需要提供用户自选skin的功能,比如bbs中某个用户通过菜单可以随意更换自己的skin设置,而mvc框架的默认视图管理器对这个要求就无法做到了,而本文则是使用viewengine规则来实现一个用户自选视图引擎的功能.
在本系统中,用户选择的skin信息将保存在cookie中,这意味着可以让用户控制这个选择保存的时间.
首先,这个系统仍然是基于ViewEngine,我们在以前的文章中可以看到,mvc框架用一个AutoViewEngine来管理存在的所有ViewEngine,那么我们也可以考虑用一个SelectViewEngine来管理一系列我们特定的可选择ViewEngine.下面先看看这个核心部分的类:
从上面的代码可以看到,默认的不同skin分别放在~/skins目录下,不同的SelectWebFormViewEngine对应不同的子目录.
然后我们实现一个基本的SelectViewEngine来管理所有的可选择ViewEngine,关键代码如下:
相关文章推荐
- Asp.Net MVC:基于cookie的用户自选视图引擎实现
- ASP.NET MVC :实现我们自己的视图引擎
- 利用Razor在ASP.NET MVC中的实现,自定义视图引擎框架(1)
- jQuery+ASP.NET MVC基于CORS实现带cookie的跨域ajax请求
- ASP.NET MVC:实现我们自己的视图引擎
- ASP.NET MVC : 实现我们自己的视图引擎
- ASP.NET MVC : 实现我们自己的视图引擎
- 利用Razor在ASP.NET MVC中的实现,自定义视图引擎框架(2)
- asp.net -mvc框架复习(11)-基于三层架构与MVC实现完整的用户登录
- ASP.NET MVC:实现我们自己的视图引擎
- ASP.Net MVC开发基础学习笔记:三、Razor视图引擎、控制器与路由机制学习
- asp.net mvc (4) - 自定义视图引擎 View/ViewEngine
- Asp.net MVC 用户在线简单实现及单点登陆扩展(一)
- Asp.net MVC 视图引擎集合
- 基于ASP.NET MVC(C#)和Quartz.Net组件实现的定时执行任务调度
- ASP.NET MVC 3 Razor 视图引擎 基本语法
- ASP.NET MVC传递Model到视图的多种方式总结(二)__关于ViewBag、ViewData和TempData的实现机制与区别
- ASP.NET MVC 5 实现基于Quartz.net 的任务调度管理平台(二)
- Asp.NET MVC 使用 SignalR 实现推送功能二(Hubs 在线聊天室 获取保存用户信息)
- ASP.NET MVC 基于强类型视图下 对模型以及模型中List 字段的同时编辑 表单提交