ASP.NET MVC 1.0 NVelocityViewEngine
$ViewData.User.Name<br />
</body>
</html>
当然,我们也可以将其注册成默认视图引擎,免得每次要创建 IView 传递给 View()。
public class MvcApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
ViewEngines.Engines.Clear();
ViewEngines.Engines.Add(new NVelocityViewEngine());
RegisterRoutes(RouteTable.Routes);
}
}
或者写一个 IResultFilter,标注在需要使用 NVelocityViewEngine 的 ActionMethod 上。
public class NVelocityViewAttribute : ActionFilterAttribute
{
public NVelocityViewAttribute()
{
}
public NVelocityViewAttribute(string viewPath)
{
this.ViewPath = viewPath;
}
public string ViewPath { get; set; }
public override void OnResultExecuting(ResultExecutingContext filterContext)
{
if (String.IsNullOrEmpty(ViewPath))
{
foreach (var ext in new[] { "html", "htm" })
{
ViewPath = String.Format("~/Views/{0}/{1}.{2}",
filterContext.RouteData.GetRequiredString("controller"),
filterContext.RouteData.GetRequiredString("action"),
ext);
if (System.IO.File.Exists(HttpContext.Current.Server.MapPath(ViewPath))) break;
}
}
var result = filterContext.Result as ViewResult;
if (result != null)
{
result.View = new NVelocityView(filterContext, ViewPath);
}
}
}
现在使用起来更加方便了。
[NVelocityView]
public ActionResult Index()
{
ViewData["user"] = new
{
Name = "Tom",
Age = 13
};
return View();
}
还可以手工指定一个模板。
[NVelocityView("/Views/Test/Index2.htm")]
public ActionResult Index()
{
ViewData["user"] = new
{
Name = "Tom",
Age = 13
};
return View();
}
文章源自:烈火网,原文:http://zhan.liehuo.net/a/200908/207790.html
转载于:https://www.cnblogs.com/silverLee/archive/2009/10/29/1592394.html
ASP.NET MVC 1.0 NVelocityViewEngine相关推荐
- 一步一步学习ASP.NET MVC 1.0创建NerdDinner 范例程序 - 强烈推荐!!!
一步一步学习ASP.NET MVC 1.0创建NerdDinner 范例程序 本文根据<Professional ASP.NET MVC 1.0>中微软牛人Scott Guthrie 提供 ...
- 从零开始学习 ASP.NET MVC 1.0 (三) Controller/Action 深入解析与应用实例 【转】
一.摘要 一个Url请求经过了Routing处理后会调用Controller的Action方法. 中间的过程是怎样的? Action方法中返回ActionResult对象后,如何到达View的? 本文 ...
- 返璞归真 asp.net mvc (10) - asp.net mvc 4.0 新特性之 Web API
返璞归真 asp.net mvc (10) - asp.net mvc 4.0 新特性之 Web API 原文:返璞归真 asp.net mvc (10) - asp.net mvc 4.0 新特性之 ...
- ASP.NET MVC 1.0 RC 版发布了【转】
[原文地址]ASP.NET MVC 1.0 Release Candidate Now Available [原文发表日期] Tuesday, January 27, 2009 12:13 PM 今天 ...
- ASP.NET MVC 3.0学习系列文章—Model in ASP.NET MVC 3.0
系列文章 ASP.NET MVC 3.0学习系列文章-序 ASP.NET MVC 3.0学习系列文章--Razor and ASP.NET MVC 3.0 ASP.NET MVC 3.0学习系列文章- ...
- ASP.NET MVC 3.0学习系列文章--Razor and ASP.NET MVC 3.0
系列文章 ASP.NET MVC 3.0学习系列文章-序 Razor and ASP.NET MVC 3.0 ASP.NET MVC 3.0学习系列文章-Controllers in ASP.NET ...
- Asp.net MVC 1.0 RTM中实现文件上传
Asp.net MVC 1.0 RTM中实现文件上传 在我们开始之前,你需要知道一个form以post方式上传文件的方式,你将要增加一个特别的enctype attribute到form标签上,为了这 ...
- 《从零开始学习ASP.NET MVC 1.0》-开天辟地入门篇
<从零开始学习ASP.NET MVC 1.0> 文章导航 (一) 开天辟地入门篇 (二) 识别URL的Routing组件 (三) Controller/Action 深入解析与应用实例 ( ...
- ASP.NET MVC 1.0 Result 几何?
Action的返回值类型到底有几个?咱们来数数看. ASP.NET MVC 1.0 目前一共提供了以下十几种Action返回结果类型: 1. ActionResult(base) 2. ...
最新文章
- iOS 关于Blocks
- servlet增删改查实例_SpringBoot系列(2)整合MongoDB实现增删改查(完整案例)
- 5.数字拆分成4段,怎样使得4段的乘积最小【dp】
- 用计算机怎么开5次方,用科学计算器来求三的五次方的值,按键顺序是( )?
- 逻辑分析推理(五小姐问题)
- NYOJ 679 贪婪的商店
- asp.net中创建一个简单的自定义控件
- lamba List 转 Map
- Springboot 添加server.servlet.context-path
- windows 2008 R2 如何更新SID
- mongodb、mysql、redis的性能对比
- Canvas里的globalCompositeOperation
- 自定义Dialog的小实战——根据地区选择手机号码前缀
- 光电自动避障小车_凌鸟智能总结了一下激光导航反射板AGV小车的优缺点!
- 灭霸一个响指,开源众包出现在开源中国的社区APP里,一键接单从此无忧。
- 雷声大雨点小,廖翔廖翔你真diao
- 将腾讯云对象存储挂载到云服务器
- v4l2架构专题模块handler分析 --- handler的初始化及handler ctrl注册
- 0.96寸OLED屏使用详解
- 常用颜色的RGB值及调色方法
热门文章
- 非线性方程求根的牛顿法
- 字典创建列表的2种方法,作业
- iOS下的 Fixed BUG
- bzoj4830 hnoi2017 抛硬币
- 【工具方法util】JAVA中将一个List等分成n个list的
- 两个port贴合七夕主题,百度输入法的“情感营销”策略
- 说说Request.Params[key]和Request[key]
- bootstrap基础学习四篇
- hdu 3732(01背包转多重背包)
- cmd看excel有多少个子表_快看!杭州各区5月房价表出炉!现在买套房要多少钱?...