using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NHibernate.Cfg;
namespace NHibernate.DataPortal
{
class NHibernateHelper
{
private ISessionFactory sessionFactory;
public NHibernateHelper()
{
sessionFactory = GetSessionFactory();
}
private ISessionFactory GetSessionFactory()
{
return (new Configuration()).Configure().BuildSessionFactory();
}
public ISession GetSession()
{
return sessionFactory.OpenSession();
}
}
}
复制代码
然后建立一个数据库操作类(UserDal.cs):
复制代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NHibernate.Domain;
namespace NHibernate.DataPortal
{
public class UserDal
{
private NHibernateHelper nhibernateHelper = new NHibernateHelper();
protected ISession Session { get; set; }
public UserDal()
{
this.Session = nhibernateHelper.GetSession();
}
public UserDal(ISession session)
{
this.Session = session;
}
public void AddUser(User user)
{
var aa = Session.Save(user);
Session.Flush();
}
public void DeleteUser(User user)
{
Session.Delete(user);
Session.Flush();
}
public void UpdateUser(User user)
{
Session.Update(user);
Session.Flush();
}
public IList GetUsers()
{
return Session.QueryOver().List();
}
}
}