易截截图软件、单文件、免安装、纯绿色、仅160KB

ASP.NET MVC 入门4、Controller与Action

本系列文章基于ASP.NET MVC Preview5.
Controller是MVC中比较重要的一部分。几乎所有的业务逻辑都是在这里进行处理的,并且从Model中取出数据。在ASP.NET
MVC
Preview5中,将原来的Controller类一分为二,分为了Controller类和ControllerBase类。Controller类
继承自ControllerBase类,而ControllerBase实现是了IController接口。

ControllerBase实现了IController接口的Execute方法,在Route匹配到Controller之后,就会调用
Execute方法来进入Controller的处理。这里还定义了一个抽象的方法ExecuteCore方法,该方法会在Execute方法的最后被调
用。ControllerBase还定义了三个核心的属性。我们在后面会详细讨论TempData和ViewData。
Controller类除了继承自ControllerBase类以外,还实现了好几个Filter接口,Filter我们在后面再详细讨论。
public
 
abstract
 
class
Controller :
ControllerBase, IActionFilter, IAuthorizationFilter, IDisposable,
IExceptionFilter, IResultFilter{ }
Controller类还定义很多有用的方法,我们新建的Controller都必须继承自这个Controller类。例如我们新建一个
AdminController:
public
 
class
AdminController : Controller
{
}
Action方法
下面谈一下在Controller中比较重要的Action方法。在ASP.NET
MVC中URL都是映射到Controller中的某个Action中,然后由匹配的Action来处理我们的业务逻辑并返回view的。
Controller中的public的方法都被当作是Action方法。Action方法通常返回一个ActionResult的结果。例如我们
为前面的AdminController定义一个Setting的Action方法,用于设置Blog的一些基本参数:
public
 
class
AdminController : Controller
{
   
public
ActionResult Setting()
    {
       
throw
 
new
NotImplementedException();
    }
}
默认情况下,Action方法的方法名就是这个Action的Action名(Action名指的是Route中匹配Action方法的URL的那
部分。例如url:Home/Index,其中Index就是Action名)。这里为什么要提到这个Action名呢?应为Action名是可以定义
的,使用ActionNameAttribute来定义。请看下面的示例:
public
ActionResult Setting()
{
   
throw
 
new
NotImplemen


相关文档:

The default ASP.NET Trust level

 啟動:Microsoft   .NET   Framework   2.0   Configuration-->Runtion   Security   Policy-->右鍵-->Adjust   Security-->Make   changes   to     this &nbs ......

asp.net学习步骤


第一步 掌握一门。NET面向对象语言,C#或VB.NET 我强烈反对在没系统学过一门面向对象(OO)语言的前提下去学ASP.NET。 ASP.NET是一个全面向对象的技术,不懂OO,那绝对学不下去!
第二步 对。NET Framework类库有一定的了解 可以通过开发Windows Form应用程序来学习。NET Framework。ASP.NET是建构在。NET Framework之 ......

asp.net超链接传值问题

最近开发中在页面之间传递值的过程中,多处应用了超链接传值的方式。但是当传递的参数中含有中文字符时,在调用Request.QueryString[]方法接收参数时,总是出现错误,而且错误的出现总是随机的。表现为接收的中文参数不全,后加通配符“?”,或者把中文参数后的那个参数和中文参数混在一起,不加区分。
 & ......

ASP.NET MVC 入门2、项目的目录结构与核心的DLL



 
ASP.NET MVC 入门2、项目的目录结构与核心的DLL
收藏



< type="text/javascript">
document.body.oncopy = function() {
if (window.clipb ......

ASP.NET MVC 入门3、Routing

在一个
route
中,通过在大括号中放一个占位符来定义
(
{ and } )
。当解析
URL
的时候,符号
"/"

"."
被作为一个定义符来解析,而定义符之间的值则匹配到占位
符中。
route
定义中不在大括号中的信息则作为常量值。
下面是一些示例
URL


Valid route definitions
Example ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号