MVC+Nhibernate+spring.net(二)
阿新 • • 發佈:2018-12-20
split customer rem ima item derby tempdata skip on()
在上一篇文章中我們已經把數據查了出來,現在我們來完善一下:前臺使用easyui
首先我們將NHelper類完善一下
public class EmpDal { public IList<Emp> GetAll(Expression<Func<Emp,bool>> where) { try { //開啟連接並且打開Isession using(ISession session = Nhelper.SessionFactory.OpenSession()) {return session.Query<Emp>().Select(x => new Emp() { EmpId=x.EmpId, EmpName=x.EmpName, EmpDate=x.EmpDate }).Where(where).ToList(); } }catch (Exception ex) { throw ex; } } public int Insert(Emp emp) { //創建session using(ISession session = Nhelper.SessionFactory.OpenSession()) { using(ITransaction transaction = session.BeginTransaction()) {int i=(int)session.Save(emp); session.Flush(); transaction.Commit(); return i; } } } public void Update(Emp emp) { using(ISession session = Nhelper.SessionFactory.OpenSession()) { using(ITransaction transaction = session.BeginTransaction()) { session.Update(emp); session.Flush(); transaction.Commit(); } } } public void Delete(int id) { using (ISession session = Nhelper.SessionFactory.OpenSession()) { Emp emp = session.Get<Emp>(id); session.Delete(emp); session.Flush(); } } public Emp GetByID(int id) { using (ISession session =Nhelper.SessionFactory.OpenSession()) { Emp emp = session.Get<Emp>(id); return emp; } } }
自己完善一下bll類
現在開始寫控制層和ui層
這是現實層的後臺代碼
public ActionResult GetData() { int pageSize = int.Parse(Request["rows"] ?? "10"); int pageIndex = int.Parse(Request["page"] ?? "1"); int total = 0; IList<Emp> r= bll.GetCustomersList(u=>true); //分頁 var tempdata = r.OrderBy(u => u.EmpId) .Skip(pageSize * (pageIndex - 1)) .Take(pageSize); var data = new { total = tempdata.Count(), rows = tempdata.ToList() }; return Json(data, JsonRequestBehavior.AllowGet); }
刪除的後臺代碼
public ActionResult Delete(string ids) { if (string.IsNullOrEmpty(ids)) { return Content("請選中要刪除的數據!"); } //正常處理 string[] strIds = ids.Split(‘,‘); List<int> idList = new List<int>(); //批量刪除 foreach (var item in strIds) { bll.Delete(int.Parse(item)); idList.Add(int.Parse(item)); } return Content("ok"); }
添加的後臺代碼
public ActionResult Add(Emp emp) { bll.Insert(emp); return View(); }
修改的後臺代碼
public ActionResult Update(int id) { ViewData.Model= bll.GetById(id); return View(); } public ActionResult Update(Emp emp) { bll.Update(emp); return Content("修改成功"); }
以上便是mvc——hibernate入門級別的增刪查改了,因為這是一套從入門到開發出來一套完整的項目,前面會有些簡單,明天開始搭建Spring.Net
MVC+Nhibernate+spring.net(二)