jqgrid-asp.net-mvc
jqgrid-asp.net-mvc
你是否使用jqgrid?
你是否想在C#/asp.net mvc中使用jqgrid?
那你很可能曾经为了分析jqgrid的request url用fiddler忙活了2个小时。(如果你要使用jqgrid的search功能的话)
那你很可能为了jqgrid的CRUD和search功能写了几百行C#代码。还不确定有没有bug。
如果你有如上的痛苦经历,那么 jqgrid-asp.net-mvc就是你的福音拉。
jqgrid-asp.net-mvc是一个host在github的C#开源项目。它在github的地址是https://github.com/weiminye/jqgrid-asp.net-mvc
jqgrid-asp.net-mvc的口号是“写最少的代码去使用jqgrid”
使用jqgrid-asp.net-mvc有如下好处,从而能够节省你至少8小时的工作时间和减少bug:
| 没使用jqgrid-asp.net-mvc | 使用jqgrid-asp.net-mvc后 | 节省了你的时间 |
|---|---|---|
| 你要花时间用fiddler分析jqgrid的request url | 不需要花时间用fiddler分析jqgrid的request url | 2个小时 |
| 你要写很多的与jqgrid相关的C#代码 | 马上节省了至少500行代码 | 6个小时 |
| 如果jqgrid更新了,你也要跟着更新你的代码 | 你不需要更新你的代码,只需要更新jqgrid asp.net mvc .dll引用 | 不可计数 |
| 因为你的代码只汇聚了你一个人的经验可能会导致你所不知道的bug | jqgrid asp.net mvc是个开源项目,所以能汇聚全世界码农的经验,从而尽量减少bug | 不可计数 |
说完了为什么要使用jqgrid asp.net mvc和使用jqgrid asp.net mvc的好处外。
下面说说如何使用jqgrid asp.net mvc。
使用jqgrid asp.net mvc很简单,就如下几个步骤:
- 首先,去jqgrid asp.net mvc的github站点 https://github.com/weiminye/jqgrid-asp.net-mvc下载源代码到本地进行编译
- 编译通过后,打开jqgrid-asp.net-mvc\jqgrid-asp.net-mvc\bin\Debug目录
- 添加jqgrid-asp.net-mvc.dll到你的asp.net mvc项目中. 注意: 为了让全世界更多开发者把jqgrid asp.net mvc变得更好,jqgrid asp.net mvc不会在NuGet上host dll,所以只能通过下载源代码编译的方式来获得dll。直到有一天,jqgrid asp.net mvc觉得已经做得足够好了,可以出来见人了,可以被人摧残了,就会host在NuGet上。
- 打开你要使用JqGrid的controller类.
- 在文件头添加如下引用:
using jqgrid_asp.net_mvc;
- 按照如下格式写你要被JqGrid在JavaScript中调用的read和search方法。注意:不要修改方法中的参数名

1 #region jqgrid read and search
2
3 public ActionResult IndexJsonList(bool _search, string nd, int? rows, int? page, string sidx, string sord, jqgrid_asp.net_mvc.Filter filters)
4 {
5 return JqGrid.Load(
6 db.Persons, //替换成你自己的业务逻辑代码
7 d => d.FirstName,//替换成你自己的业务逻辑代码
8 s => new //替换成你自己的业务逻辑代码
9 {
10 s.ID,
11 s.FirstName,
12 s.LastName,
13 s.City,
14 s.Zip,
15
16 }, rows, page, _search, ref filters);
17
18 }
19
20 #endregion
- 按照如下格式写你要被JqGrid在JavaScript中调用的Update方法。注意:不要修改方法中的参数名
1 public ActionResult UpdateForJqGrid(Person person, string oper)
2 {
3 return JqGrid.UpdateForJqGrid(person, oper, AddPerson, EditPerson, DeletePerson);
4 } - 按照如下格式写你自己的添加、修改、删除业务逻辑方法。

1 private ActionResult AddPerson(Person person)
2 {
3 //替换成你自己的业务逻辑代码
4 var newpersonentity = new Person();
5 newpersonentity.FirstName = person.FirstName;
6 newpersonentity.LastName = person.LastName;
7 newpersonentity.City = person.City;
8 newpersonentity.Zip = person.Zip;
9
10 db.Persons.Add(newpersonentity);
11 db.SaveChanges();
12
13 return Content("Add success");
14 }
15
16 private ActionResult EditPerson(Person person)
17 {
18 //替换成你自己的业务逻辑代码
19 var editpersonentity = db.Persons.Single(p => p.ID == person.ID);
20 editpersonentity.FirstName = person.FirstName;
21 editpersonentity.LastName = person.LastName;
22 editpersonentity.City = person.City;
23 editpersonentity.Zip = person.Zip;
24
25 db.SaveChanges();
26
27 return Content("Update success");
28
29 }
30 private ActionResult DeletePerson(Person person)
31 {
32 //替换成你自己的业务逻辑代码
33 var deletepersonentity = db.Persons.Single(p => p.ID == person.ID);
34 db.Persons.Remove(deletepersonentity);
35
36 db.SaveChanges();
37
38 return Content("Delete success");
39 }
- 编译你的解决方案。你就可以检验一下你使用jqgrid asp.net mvc的成果了。
如果以上步骤你还看不明白,可以参考jqgrid-asp.net-mvc.demo.web下面的Controllers\HomeController.cs 文件。
看,就这么简单!是否实现了jqgrid-asp.net-mvc的口号 - “写最少的代码去使用jqgrid” 呢?
如果你对jqgrid-asp.net-mvc有什么问题,有什么不满,有什么意见的话,就在这篇文章(http://www.cnblogs.com/adalovelacer/p/4176132.html)这里留言吧,我会解答你的。因为我知道你的意见会令jqgrid-asp.net-mvc变得更好,欢迎拍砖!
哦?是否奇怪为什么我能够解答你?因为我就是jqgrid-asp.net-mvc的创建者阿! :)
首先,我作为一个2010年就人肉FQ去了硅谷的码农,我做开源项目当然是用英文为第一语言。但是!我始终记得,我是一个中国人,很多年前,我也和大家一样,在广州,在北京,苦苦挣扎,我还记得那时候因为英文不好,遇到问题只能够找中文资料的痛苦。所以我这次专门跑来cnblogs为jqgrid-asp.net-mvc建立一个中文教程和页面,就是希望大家不要再有当年我一样的痛苦了。我希望祖国的码农们也能和美帝的码农同步共享jqgrid-asp.net-mvc的进步。
所以如果你觉得jqgrid-asp.net-mvc很赞,请支持我,去jqgrid-asp.net-mvc的github上https://github.com/weiminye/jqgrid-asp.net-mvc按照如下那样点个赞,就是点那个Star星星

你也可以到我的Github https://github.com/weiminye 上follow我,这样我一更新代码你就能看到。我会有更多的开源项目,jqgrid-asp.net-mvc只是我第一个开源项目而已。
当然更希望你能够捐献你的代码让jqgrid-asp.net-mvc变得更好!
jqgrid-asp.net-mvc的更多相关文章
- 使用jqgrid的C#/asp.net mvc开发者的福音 jqgrid-asp.net-mvc
你是否使用jqgrid? 你是否想在C#/asp.net mvc中使用jqgrid? 那你很可能曾经为了分析jqgrid的request url用fiddler忙活了2个小时.(如果你要使用jqgri ...
- ASP.NET MVC+EF在服务端分页使用jqGrid以及jquery Datatables的注意事项
引言: 本人想自己个博客网站出来,技术路线是用ASN.NET MVC5+EF6(Code First)+ZUI+各种Jquery插件,有了这个想法之后就开始选择UI,看了好多bootstrap的模板之 ...
- 【jqGrid for ASP.NET MVC Documentation】.学习笔记.4.性能
1 HTML / ViewState 大小 1.1 HTML 大小 jqGrid for ASP.NET MVC 使用最佳的客户端渲染,意味着 HTML gird 的 尺寸是最小的.事实上,只有 gr ...
- 【jqGrid for ASP.NET MVC Documentation】.学习笔记.2.jqGrid Model-View-Controller 分离
1 基本 分离代码 和 描述 ,在ASP.NET MVC 应用程序中是非常重要的.因此,jqGrid 的 mvc 模式使用一个共同的网格安装设置,包括 Model ,Controller 和 View ...
- 【jqGrid for ASP.NET MVC Documentation】.学习笔记.1.介绍
1 介绍 jqGrid for ASP.NET MVC 是一个服务端组件. 专为MVC 分隔 model ,view , controller 的原则,完全观察者模式 非常快的速度 仅仅很 ...
- ASP.NET MVC and jqGrid 学习笔记 6-增删改操作
程序结构: Member.cs CRUD.cshtml CRUD.js HomeController 一.Model public class Member { [Key] public int No ...
- asp.net mvc jqgrid 同一个页面查询不同的表,jqgrid显示不同表的表头和数据并且分页
基于我上一篇文章<a href="http://www.cnblogs.com/alasai/p/4765756.html">asp.net mvc excel导入&l ...
- 【ASP.NET MVC】jqGrid 增删改查详解
1 概述 本篇文章主要是关于JqGrid的,主要功能包括使用JqGrid增删查改,导入导出,废话不多说,直接进入正题. 2 Demo相关 2.1 Demo展示 第一部分 第二部分 2.2 ...
- 【ASP.NET MVC系列】浅谈jqGrid 在ASP.NET MVC中增删改查
ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...
- asp.net mvc JQGrid
http://mikedormitorio.azurewebsites.net/BlogPost/jqgrid-series-part-1-loading-data-to-a-jqgrid-on-an ...
随机推荐
- linux如果不进入window磁盘
最近,在windows8.1下安装ubuntu14.04,在windows沉睡.开放时间和进入选择进入系统选项,当时没有引起重视.他选择进入linux系统.但进入后,发现无法进入windows磁盘,百 ...
- DataGridView突出
再看视频的时候,看到视频上面有对DataGrid中的数据进行高亮显示实现功能.当中涉及到一个事件,是DataGrid1_ItemDataBound. 实现的代码例如以下: b.IJ'I.脚e比ontr ...
- iOS UITableViewCell AccessoryType属性
写了这么长时间的ios table 竟然不知道有一个Accessory来显示详情设置小图标,曾经竟然傻帽的取用一张图片来显示,如今想想真是..那痛啊.... cell.accessoryType = ...
- COM-TEAM
- 彩色图像--色彩空间 HSI(HSL)、HSV(HSB)
得知DIP文章66日 转载请注明文章出处:http://blog.csdn.net/tonyshengtan ,出于尊重文章作者的劳动,转载请标明出处!文章代码已托管.欢迎共同开发:https://g ...
- Spring.Net 初探
Spring.Net 初探之牛刀小试 又是一个周末,感受着外面30°的高温,果断宅在家里,闲来无事,就研究了一下spring .net 框架, 在这里不得不说 vs2013确实是一个强大的开发工具 ...
- Systrace
在构造函数,修复bug.完成代码后,你应该花一些时间来专注于应用性能.应用视频像素和运行的运行速度和流畅度影响用户体验. Android应用执行在一个共享资源的环境中,你的应用的性能会 ...
- 十天学Linux内核之第九天---向内核添加代码
原文:十天学Linux内核之第九天---向内核添加代码 睡了个好觉,很晚才起,好久没有这么舒服过了,今天的任务不重,所以压力不大,呵呵,现在的天气真的好冷,不过实验室有空调,我还是喜欢待在这里,有一种 ...
- 中国人被“清朝GDP世界第一”忽悠了!
中国人被"清朝GDP世界第一"忽悠了!"鸦片战争前的清朝GDP世界第一",这一说法在中国流传非常广.追根溯源,最早提出这一观点的似乎是英国学者麦迪森,他的一项猜 ...
- C++ - new与malloc的差别
malloc是C++语言的标准库函数:而new是C++语言中的操作符. new返回指定类型的指针,而且能够自己主动计算所需空间的大小:而malloc必需要由用户自己计算所需空间大小,并在返回后强行转换 ...