第一个NHibernate应用程序
Posted dzw159
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第一个NHibernate应用程序相关的知识,希望对你有一定的参考价值。
增删改查询
using NHibernate; using Shop.Domain.Entities; using System; using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; namespace Shop.Data { public class CartData { /// <summary> /// 根据条件得到数据集合 /// </summary> /// <param name="where"></param> /// <returns></returns> public IList<Cart> GetCartList(Expression<Func<Cart,bool>> where) { try { using (ISession session = NHibernateHelper.SessionFactory.OpenSession()) { return session.Query<Cart>().Select(x=>new Cart { Id = x.Id, Name = x.Name }).Where(where).ToList(); } } catch (Exception ex) { throw ex; } } /// <summary> /// 获取单条记录 /// </summary> /// <param name="id"></param> /// <returns></returns> public Cart GetCartById(int id) { using (ISession session = NHibernateHelper.SessionFactory.OpenSession()) { Cart cart = session.Get<Cart>(id); return cart; } } /// <summary> /// 添加数据 /// </summary> /// <param name="cart"></param> /// <returns></returns> public bool Insert(Cart cart) { using (var session = NHibernateHelper.SessionFactory.OpenSession()) { var identifier = session.Save(cart); session.Flush(); return string.IsNullOrEmpty(identifier.ToString()); } } /// <summary> /// 更新数据 /// </summary> /// <param name="cart"></param> public void Update(Cart cart) { using (var session = NHibernateHelper.SessionFactory.OpenSession()) { session.SaveOrUpdate(cart); session.Flush(); } } /// <summary> /// 删除数据 /// </summary> /// <param name="id"></param> public void Delete(int id) { using (var session = NHibernateHelper.SessionFactory.OpenSession()) { var cart = session.Get<Cart>(id); session.Delete(cart); session.Flush(); } } } }
参阅:ASP.NET MVC 企业级实战(邹琼俊)
以上是关于第一个NHibernate应用程序的主要内容,如果未能解决你的问题,请参考以下文章