public class SearchModelBinder : IModelBinder{public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext){var model = (QueryModel)(bindingContext.Model ?? new QueryModel());var dict = controllerContext.HttpContext.Request.Params;//序列化Topjui模型var advanceQuery = Serializable.JsonConvert.NewtonsoftJsonConvert<List<TopJuiQueryModel>>(dict["advanceFilter"]);if (advanceQuery != null){foreach (var query in advanceQuery){model.Items.Add(new ConditionItem{Join = query.join,Lb = query.lb,Field = query.field,Value = query.value,Rb = query.rb,Method = (QueryMethod)Enum.Parse(typeof(QueryMethod), query.op.First().ToString().ToUpper() + query.op.Substring(1)),});}if (model.Items.Count > 0) return model;}//普通查询var queryKey = Serializable.JsonConvert.NewtonsoftJsonConvert<List<TopJuiQueryModel>>(dict["filterRules"]);if (advanceQuery == null) return model;foreach (var query in queryKey){model.Items.Add(new ConditionItem{Join = query.join,Lb = query.lb,Field = query.field,Value = query.value,Rb = query.rb,Method = (QueryMethod)Enum.Parse(typeof(QueryMethod), query.op.First().ToString().ToUpper() + query.op.Substring(1)),});}return model;}}/// <summary>/// 定义Topjui模型/// </summary>public class TopJuiQueryModel{public string join { get; set; }public string lb { get; set; }public string field { get; set; }public string op { get; set; }public string value { get; set; }public string rb { get; set; }}

相关资料
EF动态查询

用.Net MVC模式做Topjui后台,通过实现IModelBinder转换前端查询条件,实现前端动态查询...相关推荐

  1. 从经典的MVC模式到Web三层结构

    暑假这段时间,在海康这边实习,参与了海康iVMS-8700客户端的开发,对MVC有了新的认识,将之前写的这篇博客更新一下.有错误的地方,欢迎大家批评指正. 经典的MVC 什么是MVC? 先来说说MVC ...

  2. (iOS-框架封装)iOS设计模式——MVC模式

    MVC模式是iOS编程中提到的最多次的设计模式,也是使用最频繁的设计模式之一.网络上有很多的MVC模式的分析文章,但都是从原理上来解释,很少能找到配套的案例来说明到底在实际的项目中要如何的使用这种模式 ...

  3. 11月23日:PHP中tp框架的入门以及mvc模式的了解

    入门thinkphp 使用fastadmin讲解 第一步下载安装fastadmin 下载地址:FastAdmin源码下载,FastAdmin下载,FastAdmin补丁下载,FastAdmin更新日志 ...

  4. JSPssh物流便利店管理系统SSH 框架 MVC 模式 mysql数据库

    一.源码特点     JSPssh物流便利店管理系统 是一套完善的WEB设计系统,对理解JSP java 编程开发语言有帮助,系统采用ssh框架 MVC模式进行开发,系统具有完整的源代码和数据库,系统 ...

  5. ssh研究生毕业环节管理系统 ssh框架 MVC模式MYSQL

    一.源码特点     JSPssh研究生毕业环节管理系统 是一套完善的WEB设计系统,对理解JSP java 编程开发语言有帮助,系统采用ssh框架 MVC模式进行开发,系统具有完整的源代码和数据库, ...

  6. ASP.Net MVC开发基础学习笔记(1):走向MVC模式

    原文出处: Edison Chou的博客(@周旭龙EdisonChou)    一.ASP.Net的两种开发模式 1.1 ASP.Net WebForm的开发模式 (1)处理流程 在传统的WebFor ...

  7. 我在阿里做中后台开发

    来自:阿里巴巴中间件 文  |  牧瞳 「开发全流程在线化」近些年来热度不断攀升,比如 AWS 在 C9 的实践.开源届比较出名的 TheiaJS,到后起之秀 code-server.行业佼佼者 VS ...

  8. MVC模式与三层架构的区别

    MVC模式与三层架构的区别 原文地址:http://www.cnblogs.com/yourshj/p/5197310.html 之前总是混淆MVC表现模式和三层架构模式,为此记录下. 三层架构和MV ...

  9. MVC模式和Maven项目构建

    1.    尽管Servlet + JSP可以完成全部的开发工作,但是代码耦合度高.可读性差.重用性不好,维护.优化也不方便.所以才有了MVC. MVC是当前WEB开发的主流模式,核心是使用Strut ...

  10. 一步步带你做vue后台管理框架(三)——登录功能

    系列教程<一步步带你做vue后台管理框架>第三课 github地址:vue-framework-wz 线上体验地址:立即体验 <一步步带你做vue后台管理框架>第一课:介绍框架 ...

最新文章

  1. python创建mysql数据库_python 怎么创建create mysql的数据库
  2. .Net 之匿名类(AnonymousType)(转载)
  3. apache 服务发布多个项目,只需要更改配置文件(需要设定虚拟主机)
  4. bubble气泡特效
  5. char 如何赋空的初值
  6. html动画曲线快速结束,css3动画如何在动作结束时保持该状态不变
  7. Hadoop的SequenceFile读写实例
  8. 算法-排序-快速排序(包含多种快速排序)
  9. 命令(CMD)终端的清屏(清除/清空)命令/快捷键
  10. shell题库选择题_shell学习:几道常见shell习题
  11. c语言的四个函数,C语言学习之动态内存分配的四个函数
  12. git 空提交和重置提交者(转载)
  13. 国际音标的HTML实体对照表
  14. vb连接oracle 工程,VB 连接Oracle数据库
  15. 时间序列分析之相关性
  16. Feedsky尝试Feed点击付费广告
  17. 怎么打开服务器的xls文件,xls是什么文件格式?.xls文件打开方法
  18. Flash Helper Service 这个流氓,动不动弹出广告!!
  19. 163邮箱怎么设置签名?商务邮箱哪些正规?163邮箱个人怎么用?
  20. 一次网站的性能优化之路 -- 天下武功,唯快不破

热门文章

  1. 蓝桥杯题目练习 基础篇 [蓝桥杯2015初赛]奖券数目
  2. 如何下载sci论文?
  3. 【资源分享】分享十个历史版本的eclipse安装包
  4. getch方法_c语言中中getch()函数为什么不起作用?
  5. 学习单片机c语言必备的两个软件,单片机C语言应用100例(第2版)
  6. 如何在MSWord中加入MSAgent
  7. simotion基本功能手册_深入浅出西门子运动控制器——SIMOTION实用手册(1CD)
  8. 推荐一个js脚本的字体拟合模型
  9. 脚本重启项目-定时启动
  10. 所有ghost操作系统大全