2010年12月2日
摘要: 这节讲 一下ASP.NET MVC中的Helper。何谓Helper,其实就是在View中为了实现一些灵活功能而写的方法组。其实ASP.NET MVC的View是Aspx的页面,本身可以声明定义方法,那为什么要有Helper呢?其实无非是将界面与逻辑分离,而且Asp.net MVC也并不只支持Aspx一种View(还可以扩展出来很多),在扩展包中,也有Castle的NVelocity引擎和Boo,... 阅读全文
posted @ 2010-12-02 14:43 vibratea 阅读(361) 评论(0) 推荐(0) 编辑
摘要: 在Asp.netMvc中当你有以下及类似以下需求时你可以使用Filter功能判断登录与否或用户权限决策输出缓存防盗链防蜘蛛本地化与国际化设置实现动态ActionFilter是一种声明式编程方式,在Asp.net MVC中它只能限制于Action(或它的Controller)。Filter要继承于ActionFilterAttribute抽象类,并可以覆写void OnActionExecuting... 阅读全文
posted @ 2010-12-02 14:40 vibratea 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 我们上边所看到的Action都是return View();我们可以看作这个返回值用于解析一个aspx文件。而它的返回类型是ActionResult如除了View()之外那我们这里还能用于返回什么值呢?一、ascx页面场景:要返回代码片断,比如Ajax返回一个子页我们先新建一个Action我们下面再建一个View,仍然是在Action中点右键,AddView。注意图中勾选。于是新建了一个ascx页... 阅读全文
posted @ 2010-12-02 14:37 vibratea 阅读(390) 评论(0) 推荐(0) 编辑
摘要: 一、ViewData与TempData属性来向View页传递对象上文中已经提到,使用ViewData可以将数据由Controller传递到View在前文中我们建立了EiceController类在本文的示例中我们将这个Controller改一下我们将Index的参数移除,并提供了ViewData和TempData的赋值在Views/Eice/Index.aspx这个View中我们写以下代码注意上面... 阅读全文
posted @ 2010-12-02 14:33 vibratea 阅读(337) 评论(0) 推荐(0) 编辑
摘要: 这节我们让ASP.NET MVC真正的跑起来一、新建Controller首先我们自己新建一个新的Controller在Controllers上点右键,添加,Controller选项之后出现一个对话框:这里我们将之起名为EiceController附注一下,这里是个纯广告,无兴趣可略过此行:www.eice.com.cn为您建立Web2.0社交网站默认生成的代码如下:二、新建View文件当然,除了C... 阅读全文
posted @ 2010-12-02 14:28 vibratea 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 一、什么是UrlRouting你可以使用UrlRouting来配置一些URL的映射,使用户可以按你的规则来访问网站.使用UrlRouting,一定要规定URL模式,它包括一个位置标识,它将在你请求网页时按这个规则返回给你内容. 当然,这个创建的规则完全是由你自己定义的.上回说道如何访问index.aspx及about.aspx:但是http://localhost/Views/Home/Index... 阅读全文
posted @ 2010-12-02 14:25 vibratea 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 从前写过一系列的ASP.NET MVC教程,ASP.NET MVC在这之后历经5个preview版本终于到今天的RC版本,而且不久就要正式推出正式版本,所以值此之际,重典也重新修正这一系列的教程,使之与时俱进。因为最初的一篇是写自2008年3月10日(Asp.net Mvc Framework 系列),回头看看已经足足一年了,所以本系列修正版本的教程就叫做ASP.NET MVC重典教程一周年版。现... 阅读全文
posted @ 2010-12-02 14:24 vibratea 阅读(285) 评论(0) 推荐(0) 编辑
摘要: 看到微软MIX08大会的产品发布了Silverlight、IE8、ASP.NET MVC,一阵窃喜。马上下载MVC2(ASP.NET MVC Preview 2)来安装(自从装了VS08的中文版后,就一直没装MVC的扩展在等MVC2)。装完打开VS一看,没有找到MVC的模板。顿觉失落,那个郁闷啊。。。。可是上了个厕所回来,突然灵光一闪,这不就是个项目模板而已么。哈哈,暗爽。于是马上动手。注:这里只... 阅读全文
posted @ 2010-12-02 14:11 vibratea 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 本系列文章基于ASP.NET MVC beta.本示例Blog系统同步更新的演示站点:http://4mvcblog.qsh.in/在ASP.NET MVC beta发布之前,M$就宣布支持开源的JS框架jQuery,然后ASP.NET MVC beta发布后,你建立一个ASP.NET MVC beta的项目后,你可以在项目的scripts目录下找到ASP.NET AJAX和jQuery的JS。反... 阅读全文
posted @ 2010-12-02 13:54 vibratea 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 本系列文章基于ASP.NET MVC Preview5.前一篇中我们已经了解了Action Filter 与 内置的Filter实现,现在我们就来写一个实例。就写一个防盗链的Filter吧。首先继承自FilterAttribute类同时实现IActionFilter接口,代码如下:[代码]然后我们建立一个用于处理文件请求的Controller,并应用上我们刚才建立的Filter:[代码]简单测试一... 阅读全文
posted @ 2010-12-02 13:49 vibratea 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 本系列文章基于ASP.NET MVC Preview5.有时候你想在调用action方法之前或者action方法之后处理一些逻辑,为了支持这个,ASP.NET MVC允许你创建action过滤器。Action过滤器是自定义的Attributes,用来标记添加Action方法之前或者Action方法之后的行为到控制器类中的Action方法中。一些可能用到Action过滤器的地方有:日志,异常处理身份... 阅读全文
posted @ 2010-12-02 13:45 vibratea 阅读(219) 评论(0) 推荐(0) 编辑
摘要: ViewData有一个ModelState的属性,这是一个类型为ModelStateDictionary的ModelState类型的字典集合。在进行数据验证的时候这个属性是比较有用的。在使用Html.ValidationMessage()的时候,就是从ViewData.ModelState中检测是否有指定的KEY,如果存在,就提示错误信息。例如在前一篇文章ASP.NET MVC 入门7、Hellp... 阅读全文
posted @ 2010-12-02 13:39 vibratea 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 本系列文章基于ASP.NET MVC Preview5.ASP.NET MVC提供了很多Hellper的方法,Hellper就是一些生成HTML代码的方法,方便我们书写HTML代码(有一部分的朋友更喜欢直接写HTML代码)。我们也可以利用.NET 3.5的扩展方法来书写我们自己的Hellper。例如:[代码]生成的HTML代码就是:<a href="/Home/Index">首页<... 阅读全文
posted @ 2010-12-02 13:32 vibratea 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 本系列文章基于ASP.NET MVC Preview5.ASP.NET MVC的TempData用于传输一些临时的数据,例如在各个控制器Action间传递临时的数据或者给View传递一些临时的数据,相信大家都看过“在ASP.NET页面间传值的方法有哪几种”这个面试题,在ASP.NET MVC中TempData的就是其中的一种传值方法。TempData默认是使用Session... 阅读全文
posted @ 2010-12-02 11:58 vibratea 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 本系列文章基于ASP.NET MVC Preview5.view在MVC模式中与用户进行最直接的接触,它负责数据的呈现。这里要注意一点就是,view只是负责数据的呈现,所以我们应该要尽量让view中不涉及业务逻辑的处理。我们来添加一个Blog首页的view。在安装了ASP.NET MVC后,我们在添加新项目的时候可以看到有MVC的view模板:注:如果你的是中文版的VS,安装完后可能会出现找不到这... 阅读全文
posted @ 2010-12-02 11:47 vibratea 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 本系列文章基于ASP.NET MVC Preview5.Controller是MVC中比较重要的一部分。几乎所有的业务逻辑都是在这里进行处理的,并且从Model中取出数据。在ASP.NET MVC Preview5中,将原来的Controller类一分为二,分为了Controller类和ControllerBase类。Controller类继承自ControllerBase类,而Controlle... 阅读全文
posted @ 2010-12-02 11:41 vibratea 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 本系列文章基于Microsoft ASP.NET MVC Beta.在一个route中,通过在大括号中放一个占位符来定义( { and } )。当解析URL的时候,符号"/"和"."被作为一个定义符来解析,而定义符之间的值则匹配到占位符中。route定义中不在大括号中的信息则作为常量值。下面是一些示例URL:Valid route definitionsExamples of matching U... 阅读全文
posted @ 2010-12-02 11:35 vibratea 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 我们新建一个ASP.NET MVC的Web Application后,默认的情况下,项目的目录结构如下:App_Data:这个目录跟我们一般的ASP.NET website是一样的,用于存放数据。Content:这个目录是建议用来存放一下资源文件的。例如CSS、JS、图片等等。当然你不愿意的话,完全可以不放到这里来。Controllers:这个目录是建议将Controller类都放到这里来,方便管... 阅读全文
posted @ 2010-12-02 11:33 vibratea 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 什么是MVC模式MVC(Model-View-Controller,模型—视图—控制器模式)用于表示一种软件架构模式。它把软件系统分为三个基本部分:模型(Model),视图(View)和控制器(Controller)。那么MVC模式和我们熟悉的WebForm模式有什么不同呢?他的各个部分又是怎样分工的呢?我们先来看一下普通的WebForm模式下,我们请求一个例如http:/... 阅读全文
posted @ 2010-12-02 11:30 vibratea 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 摘要 本文作为《ASP.NET MVC案例教程》的完结篇,仅从个人角度,发表一些对ASP.NET MVC框架的看法。并且在最后会附上本系列文章的Demo下载。前言 写这篇文章的目的,是想总结一些东西,以帮助朋友们更好的使用这个框架。但是,我又不像把官方列举的哪些优势、功能翻译过来列举在这里。所以,我想干脆我就纯从个人观点上对这个框架评论一下吧。说的不好的,不对的还请批评指正。^_^ASP.NET ... 阅读全文
posted @ 2010-12-02 11:05 vibratea 阅读(202) 评论(0) 推荐(0) 编辑