码迷,mamicode.com
首页 > Web开发 > 详细

MVC jsonModelBuilder

时间:2015-12-20 10:27:38      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:

  /// <summary>
    /// JsonModelBinderAttribute
    /// author:BearLee
    /// 2015/5/20 11:48:40
    /// </summary>
    public class JsonModelBinderAttribute : CustomModelBinderAttribute
    {
        public override IModelBinder GetBinder()
        {
            return new JsonBinder();
        }
    }
    public class JsonBinder : IModelBinder
    {
        public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
        {
            //return base.BindModel(controllerContext, bindingContext);
            if (controllerContext == null)
            {
                throw new ArgumentNullException("controllerContext");
            }

            if (bindingContext == null)
            {
                throw new ArgumentNullException("bindingContext");
            }

            var prefix = bindingContext.ModelName;
            string jsonString = controllerContext.RequestContext.HttpContext.Request.Params[prefix];
            if (jsonString != null)
            {
                var serializer = new JavaScriptSerializer();
                var result = serializer.Deserialize(jsonString, bindingContext.ModelType);
                return result;

            }
            else
            {
                return null;
            }


        }
    }

 

MVC jsonModelBuilder

标签:

原文地址:http://www.cnblogs.com/daxiongblog/p/5060313.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!