zoukankan      html  css  js  c++  java
  • Asp.net MVC – Controller

    1. 在Controller中获取当前Route信息

    比如获取当前的controller信息,

    RouteData.Values["controller"]

    key是Route匹配的那些参数

    2. Action的返回值中的ActionResult种类

    Controller中返回的Action Result种类

    类型

    解释

    返回方法

    ContentResult 返回一个字符串 Content
    EmptyResult No Response  
    FileContentResult
    FilePathResult
    FileStreamResult
    返回一个文件 File
    HttpUnauthorizedResult 返回403  
    HttpNotFoundResult 返回404  
    JavaScriptResult 返回一段js JavaScript
    JosnResult JSON格式数据 Json
    RedirectResult 跳转到期它URL Redirect
    RedirectToRouteResult 转到其它Action,或者其它Controller的Action RedirectToRoute
    RedirectToAction
    ViewResult
    PartialViewResult
    返回由View engine处理 View
    PartialView

    还可以直接把Action方法的返回值改成string, 返回一个字符串。

    3. 如何传值到View?

    使用ViewBag、ViewData

    ViewBag是dynamic类型,你可以随意的扩展和保存你需要的数据

    使用Model

    return View(model) 就可以将model作为强类型View的显示主体。

    4. 使用Filter来控制Action的访问

    asp.net MVC有很多的Filter来影响Action的访问, 这些Filter也是Attribute,可以直接写在Action或者Controller的头上。

    系统Filter

    名称

    描述

    OutputCache 缓存
    ValidateInput 关闭验证
    Authorize 验证访问的权限
    ValidateAntiForgeryToken 防止跨站攻击
    HandleError 处理程序异常

     

    Filter使用地方

    * 可以直接写在Action或者Controller的头上。

    * 在全局注册

    在Application_Start()中,注册Filter, 这样每个request都会受到这些Fiterl的影响。

    FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);

    编写自定义的Filter

    编写类继承ActionFilterAttribute, 覆盖比如OnActionExecuting这些方法。

    Filter可以用来做日志记录,权限验证等都非常方便。

  • 相关阅读:
    C语言字符串之无重复字符的最长子串
    C语言递归之求根到叶节点数字之和
    C语言递归之二叉树的最大深度
    C语言递归之翻转二叉树
    C语言递归之对称二叉树
    C语言链表之两数相加
    如何把笔记本电脑的有线网分享给手机上
    安利spacemacs ^^
    lambda创世纪
    jinterface包详解
  • 原文地址:https://www.cnblogs.com/JustRun1983/p/2673624.html
Copyright © 2011-2022 走看看