国外某牛人的JsonModelBinder 实现 MVC 3.0
2017-02-14 22:12
274 查看
public class JsonModelBinder : DefaultModelBinder { public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext) { if (!IsJSONRequest(controllerContext)) { return base.BindModel(controllerContext, bindingContext); } // Get the JSON data that's been posted var request = controllerContext.HttpContext.Request; var jsonStringData = new StreamReader(request.InputStream).ReadToEnd(); return new JavaScriptSerializer().Deserialize(jsonStringData, bindingContext.ModelMetadata.ModelType); } private static bool IsJSONRequest(ControllerContext controllerContext) { var contentType = controllerContext.HttpContext.Request.ContentType; return contentType.Contains("FTchinaMVC/json"); } }
protected void Application_Start() { ModelBinders.Binders.DefaultBinder = new JsonModelBinder(); RegisterRoutes(RouteTable.Routes); } AreaRegistration.RegisterAllAreas(); RegisterGlobalFilters(GlobalFilters.Filters);
http://www.cnblogs.com/zihuxinyu/articles/extjs_jsonmodelbinder_mvc3_ajax.html
相关文章推荐
- Mvc用DefaultModelBinder处理Json序列化数据
- ASP.NET MVC:如何实现一个自己的ModelBinder?
- ASP.NET MVC:如何实现一个自己的ModelBinder?
- MVC重写DefaultModelBinder实现自定义模型绑定
- ASP.Net MVC自订Json转换的ModelBinder
- 如何应用Asp.Net Mvc内建功能(DefaultModelBinder)实现简单类型、复杂类型、集合类型,以及字典类型的自动绑定
- MVC Model binder(complex object)
- Asp.net MVC 示例项目"Suteki.Shop"分析之---ModelBinder
- 返璞归真 asp.net mvc (5) - Action Filter, UpdateModel, ModelBinder, Ajax, Unit Test
- 用PHP开始你的MVC(三)实现你的Model层
- ASP.NET MVC 2扩展点之Model Binder实例分析
- Asp.Net Mvc: Implement your custom ModelBinder
- Asp.Net Mvc: Implement your custom ModelBinder
- 用C#实现MVC(Model View Control)模式介绍
- 用C#实现MVC(Model View Control)模式介绍
- 如何使用jQuery向asp.net Mvc传递复杂json数据-ModelBinder篇
- 用C#实现MVC(Model View Control)模式介绍
- Asp.Net Mvc: Implement your custom ModelBinder
- Asp.net MVC 示例项目"Suteki.Shop"分析之---ModelBinder 推荐
- 返璞归真asp.net mvc 1.0(5) - Action Filter, UpdateModel, ModelBinder, Ajax, Unit Test