zoukankan      html  css  js  c++  java
  • asp.net mvc int[] 和 string[] 自定义数组绑定

    新建类,int[]数组模型绑定

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Mvc;
    
    namespace Koukou.Admin.ModelBinder
    {
        public class IntArrayModelBinder : DefaultModelBinder
        {
            public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
            {
                var value = bindingContext.ValueProvider.GetValue(bindingContext.ModelName);
                if (value == null || string.IsNullOrEmpty(value.AttemptedValue))
                {
                    return null;
                }
    
                return value
                    .AttemptedValue
                    .Split(',')
                    .Select(int.Parse)
                    .ToArray();
            }
        }
    }
    

    string[] 数组模型绑定

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Mvc;
    
    namespace Koukou.Admin.ModelBinder
    {
        public class StringArrayModelBinder : DefaultModelBinder
        {
            public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
            {
                var value = bindingContext.ValueProvider.GetValue(bindingContext.ModelName);
                if (value == null || string.IsNullOrEmpty(value.AttemptedValue))
                {
                    return null;
                }
    
                return value
                    .AttemptedValue
                    .Split(new string[] { ",", Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);
                // 逗号“,” 和 换行符 作为分隔
            }
        }
    }
    

    在global.asax的Application_Start注册

    protected void Application_Start()
            {
                AreaRegistration.RegisterAllAreas();
    
                RegisterGlobalFilters(GlobalFilters.Filters);
                RegisterRoutes(RouteTable.Routes);
    
    //自定义model绑定
                ModelBinders.Binders.Add(typeof(int[]), new ModelBinder.IntArrayModelBinder());
                ModelBinders.Binders.Add(typeof(string[]), new ModelBinder.StringArrayModelBinder());
            }
    

      

      

  • 相关阅读:
    Matplotlib中柱状图bar使用
    python IDLE颜色设置
    linux报错汇总
    PCA
    高斯混合模型
    深度解剖dubbo源码---01dubbo的架构原理-探索.mp4
    SpringCloud之初识Feign
    第七模块 :微服务监控告警Prometheus架构和实践
    第四模块 :微服务调用链监控CAT架构和实践
    skywalking中文文档
  • 原文地址:https://www.cnblogs.com/gezifeiyang/p/3983280.html
Copyright © 2011-2022 走看看