你是否使用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很简单,就如下几个步骤:
using jqgrid_asp.net_mvc;
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
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.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变得更好!