模型绑定 动作过滤器

mvc中同坐模型绑定model binding 达到解析客户端传来的数据,而解析的工作交给DefaultModelBinder类别处理。

1,简单模型绑定:当网页上有个窗体,且窗体内有个名为Username的输入字段,而Action的参数也定义了一个名为Username的参数,只要窗体的域名与action方法上的参数名称一样,那么Action在被运行的时候就会通过DefaultModelBinder类别将窗体或QueryString传来的数据进行处理,将原本传来的字串数据转换成对应的net型别并传给Action方法的同名参数里。

——————————————————————————————————

动作过滤器

有时候在运行Action之前或之后会需要运行一些逻辑运算,以及处理一些运行过程中所生成的异常状况,为了满足这个需求,asp。netmvc提供动作过滤器(Action Filter)来处理这些需求。

授权过滤器Authorization Filters:在运行任何Filter或Action之前被运行,经常用于身份验证或需要尽早运行特殊检查的时候  ,(界面IAuthorizationFilter)

动作过滤器Action Filters:在运行Action的前后被运行,用于运行Action需要生成记录或者缓存信息时,(界面IActionFilter)

结果过滤器Result Filters:在运行ActionResult的前后被运行,在View呈现到浏览器之前,可以运行一些逻辑运算,或用来更高viewResult的输出结果,界面(IResultFilter)

例外过滤器ExceptionFilters:从授权过滤器开始到ActionResult运行完后这段过程中如果有任何异常发生,可以使用此Filter来针对例外进一步做处理,例如记录错误细节或导向友善的错误界面。界面(IExceptionFilter)

IE7渲染

<节点configuration>

<节点system.webServer>

<节点httpProtocol>

<节点customHeaders>

<节点add name="X-UA-Compatible" value="IE=EmulateIE7" />

<节点/customHeaders>

<节点/httpProtocol>

<节点/system.webServer>

<节点/configuration>

在配置文件中添加此节点,测试站点打开 文档模式就会是ie7的

时间: 2024-10-10 12:36:39

模型绑定 动作过滤器的相关文章

Asp.Net MVC在过滤器中使用模型绑定

废话不多话,直接上代码 1.创建MVC项目,新建一个过滤器类以及使用到的实体类: 1 public class DemoFiltersAttribute : AuthorizeAttribute 2 { 3 public override void OnAuthorization(AuthorizationContext filterContext) 4 { 5 var person = new Person(); 6 //过滤器中使用模型绑定 7 BindModel<Person>(filt

《ASP.NET MVC 4 实战》学习笔记 11:模型绑定器与值提供器

一.创建自定义模型绑定器: 利用请求数据塑造模型对象并将对象传递给动作参数的过程称为模型绑定(Model Binding). 大多数时候动作参数是对象的主键或其他唯一标识符,因此我们可以不必在所有的动作中都放置一段重复的数据访问代码(下面代码“\\Before”部分),而是使用一个自定义的模型绑定器(下面代码“\\After”部分).它能够在动作执行之前加载存储对象,于是动作不再以唯一标识符而是以持久化的对象类型作为参数. // Before public ViewResult Edit (Gu

模型绑定(Model Binding)

模型绑定是值用浏览器以HTTP请求方式发送数据来创建.NET对象的过程.(负责生成适当的动作方法参数值) 动作调用器(Action Invoker):调用控制器的动作方法的组件,负责在调用动作方法之前获取动作方法的参数值. 默认的动作调用器(ControllerActionInvoker)依赖于模型绑定器,而模型绑定器(Model Binder)是有IModelBinder接口定义的. public interface IModelBinder { object BindModel(Contro

ASP.NET MVC——模型绑定

这篇文章我们来讲讲模型绑定(Model Binding),其实在初步了解ASP.NET MVC之后,大家可能都会产生一个疑问,为什么URL片段最后会转换为例如int型或者其他类型的参数呢?这里就不得不说模型绑定了.模型绑定是指,用浏览器以HTTP请求方式发送的数据来创建.NET对象的过程.每当定义具有参数的动作方法时,一直是在依赖着这种模型绑定过程. 准备项目 我们先来创建一个MVC项目,名叫MVCModels,并在Models文件夹中创建一个新的类文件Person. 1 using Syste

模型绑定

模型绑定主要是将Http请求数据绑定到Action的参数中.模型绑定接口是IModelBinder 模型绑定器数据检测顺序: 1.检测目标对象的名称和类型.通常是动作方法的参数. 2.通过已知对象查找数据源(http请求),并找到可用数据(字符串值). 3.根据对象的类型把可用数据值转换为目标类型.如果转换失败会报错误信息. 4.通过已处理的数据来构造目标对象. 5.将目标对象送到动作调用器,并由动作调用器将对象注入到目标动作方法中. 一.IModelBinder接口定义 // 摘要: // 定

第22章 模型绑定

模型绑定(Model Binding)是指用浏览器以HTTP请求方式发送的数据来创建.NET对象的过程. 动作方法的参数依赖于模型绑定过程(通过模型绑定器来实现).利用整个HTTP请求所携带的数据(用户在表单中输入的数据.路由数据.请求URL中的查询字符串.请求中上传的文件)构造动作方法所需要参数对象的过程. 模型绑定过程(模型绑定器要做的事): 1.检测确认目标对象(要创建的对象,指动作方法的参数)的名称和类型:(动作方法参数的名称和类型) 2.通过对象名称查找数据源(请求),并找到可用数据(

ASP.NET 的模型绑定(ModelBinding)

ModelBinding :用浏览器以HTTP请求方式发生数据来创建.NET对象的过程. 一.理解模型绑定. 1.模型绑定器是由IModelBinder接口定义的.下面是此接口的定义 namespace System.Web.Mvc { public interface IModelBinder { object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext); } } 2.在一

模型绑定与验证笔记

模型绑定 1.1模型绑定:以HTTP请求方式发送的数据来创建.NET对象的过程.每当定义具有参数的动作方法时,一直是在依赖着这种模型绑定过程 当导航到/Home/Index/1时,该URL的最后一个片段会被付给id路由变量,它指定了用户感兴趣的对象. 默认的动作调用器,ControllerActionInvoker,要依靠模型绑定器来生成调用动作所需要的数据对象.模型绑定器由IModelBinder定义. namespace System.Web.Mvc{ // 摘要: // 定义模型联编程序所

Kendo UI Grid 模型绑定

开篇 接触 Asp.net MVC 时间较长的童鞋可能都会了解过模型绑定(Model Binding),而且在一些做 Web 项目的公司或是Team面试中也经常会被问到.项目中有很多 Action 中都使用了自定义的模型绑定,但是业务逻辑太过复杂不适合做为例子与大家分享,而今天在做一个 Kendo UI 的功能时觉得可以用 Kendo UI 做为例子与大家分享与探讨一个典型的 Model Binding 的过程. 写的比较随性,欢迎大家讨论及拍砖! 背景介绍 Kendo UI: 它是一个非常出名