zoukankan      html  css  js  c++  java
  • MVC jsonModelBuilder

      /// <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;
                }
    
    
            }
        }
  • 相关阅读:
    webpack 入门(1)入口(entry)出口(output
    npm 常用使用命令
    typora快捷键
    一些思考
    SED LEARN NOTE
    常用网站工具整理
    DFTC
    Notion使用技巧
    BASH LEARN NOTE
    STBC公式
  • 原文地址:https://www.cnblogs.com/daxiongblog/p/5060313.html
Copyright © 2011-2022 走看看