• [MSDN]ASP.NET MVC2(7)Controller入门


    说明:本内容来自微软的webcast,讲师为苏鹏。视频没有书方便(想看哪页就看哪页),所以抄录要点和老师语录。

    内容介绍

    -          Controller类的基本构成

    -          ACTIONRESULT类的使用

    预备知识

    -          安装VS2010

    -          了解ASP.NET

    -          了解设计模式基本概念

    关于Controller

    -          Controller 是什么?

    响应用户的输入,去model层去拿到数据,把数据拿出来返回给用户。

    Controller的历史

    -          Controller的变迁

    定义一个Controller

    -          使用Icontroller接口

    clip_image002

    RequestContext:请求上下文

    直接输出内容的话,建议直接继承IhttpHander

    上面requestContext除了包含http上下文对象——HttpContext,还有其他对象。

    Controller的基础类实现

    继承自Icontroller接口就可以

    一个controller最重要的一点是让routeing 可以找到自己。并且知道自己可以处理那些事。

    ControllerBase是一个抽象类的接口。比较好的基础继承类。

    Controller类和Action

    -          system.web.mvc.controller

    -          Action方法

    首先继承自system.web.mvc.controller类,然后有一些Aciton方法。

    Action方法

    clip_image004

    所有controller方法,都认为是一个Action方法。这个方法他会响应http的一些信息并且对每一个请求做一个特定的匹配。必须是public否则无法调用。

    使用多个参数

    Action中有多个参数

    clip_image006

    默认url

    用户忘记输入参数时,我们可以参数加一个默认值。

    不再route里加的话,可以在ActionResult里加。

    Public ActionResult DinnersNearMe(string location,int maxDinners=10){}

    int maxDinners=10,是默认值,4.0才有的特性。可参考vs2010新特性。

    ActionResult

    Public abstract class ActionResult

    {

    Public abstract void ExecuteResult(ControllerContext context);

    }

    MVC中,Action是响应用户请求的最小单元。

    ExecuteResult(ControllerContext context)命令模式,在客户端渲染内容。

    ActionResult的重载

    除了可以返回View,还可以返回各种Result

    clip_image008

    EmptyResult

    没有任何匹配和执行

    这种模式和函数返回null是一样的。

    在某时候是有意义的,不可或缺。

    ContentResult

    -          输出纯文本

    是使用httpResponse直接输出标记为textarea标记的内容。输出后也可以编码,也可以cultureinfo去指定。

    一般用于纯文本输出,轻量级文本输出时使用。

    常用于ajax调用,view样式多复杂相对慢,ajax需要的数据单纯。

    FileResult

    -          FilePahtResult

    -          FileContentResut

    -          FileStreamResult

    输出http文件

    路径,文本,二进制流

    JsonResult

    clip_image010

    把结果值拆分成json字符串方式返回。

    JavascriptResul

    clip_image012

    特点:把一段js脚本放在客户端。生成一段脚本,希望马上执行。

    RedirectResult

    自动跳转

    跳转到指定的页面

    url跳转方式

    RedirectToRouteResult

    -          RedirectToRoute

    -          ReditectToActio

    跳转到RouteActon

    MVCURL的本质就是RouteAction

    ViewResultPartiaoViewResult

    使用字典类返回结果

    使用View方式来生成对应的结果。生成两个字典类,有关键字,有值。

    Action Result Helper函数

    帮助生成结果的

    clip_image014

    隐式调用Action Results

    Content方式格式化结果

    直接将double当作文本原样输出。

    如何将double输出?

    clip_image016

    总结

    -          controller类的基本构成

    -          ActionResult 的使用

    附:
    标题:粗体+斜体+黑色
    ppt文字:宋体+黑色
    作者语录:斜体+黑色/红色/蓝色
    我的心得:@开头

  • 相关阅读:
    2018-2019-1 20165202 20165210 20165214 实验一 开发环境的熟悉
    2018-2019-1 20165210 《信息安全系统设计基础》第3周学习总结
    2018-2019-1 20165210 《信息安全系统设计基础》第2周学习总结
    2018-2019-1 20165210 《信息安全系统设计基础》第1周学习总结
    2018-2019-1 20165201 实验五 通讯协议设计
    2018-2019-1 20165201 《信息安全系统设计基础》第9周学习总结
    2018-2019-1 20165201 实验四 外设驱动程序设计
    2018-2019-1 20165201 实现mypwd
    2018-2019-1 20165201 《信息安全系统设计基础》第8周学习总结
    2018-2019-1 20165201 实验三 实时系统
  • 原文地址:https://www.cnblogs.com/htht66/p/2330506.html
Copyright © 2020-2023  润新知