Nhibernate 在何处引用session.BeginTransaction?
必须使用的dll是什么?在哪里可以买到 我正在使用Nhibernate,我可以与Nhibernate一起使用吗?来源:Nhibernate 在何处引用session.BeginTransaction?,nhibernate,transactionscope,Nhibernate,Transactionscope,必须使用的dll是什么?在哪里可以买到 我正在使用Nhibernate,我可以与Nhibernate一起使用吗?来源: 使用(ISession session=OpenSession()){ 使用(ITransaction transaction=session.BeginTransaction()){ IQuery query=session.CreateQuery(“来自Pet,其中PetName='Rosie'”); Pet=query.List()[0]; 删除(pet); Commit
使用(ISession session=OpenSession()){
使用(ITransaction transaction=session.BeginTransaction()){
IQuery query=session.CreateQuery(“来自Pet,其中PetName='Rosie'”);
Pet=query.List()[0];
删除(pet);
Commit();
}
}
静态ISessionFactory SessionFactory;
静态ISession OpenSession(){
if(SessionFactory==null)//不是线程安全的
{//SessionFactory非常昂贵,只能创建一次
配置=新配置();
AddAssembly(Assembly.GetCallingAssembly());
SessionFactory=configuration.BuildSessionFactory();
}
返回SessionFactory.OpenSession();
}
BeginTransaction()是NHibernate会话上的一个方法。它是NHibernate当前版本中NHibernate.dll的一部分
using (ISession session = OpenSession()) {
using (ITransaction transaction = session.BeginTransaction()) {
IQuery query = session.CreateQuery("FROM Pet WHERE PetName = 'Rosie'");
Pet pet = query.List<Pet>()[0];
session.Delete(pet);
transaction.Commit();
}
}
static ISessionFactory SessionFactory;
static ISession OpenSession() {
if (SessionFactory == null) //not threadsafe
{ //SessionFactories are expensive, create only once
Configuration configuration = new Configuration();
configuration.AddAssembly(Assembly.GetCallingAssembly());
SessionFactory = configuration.BuildSessionFactory();
}
return SessionFactory.OpenSession();
}