
nhibernate 中使用session.save()问题
NHibernateHelperNHH=newNHibernateHelper();ISessionsession=NHH.GetCurrentSession();ITr...
NHibernateHelper NHH = new NHibernateHelper();
ISession session = NHH.GetCurrentSession();
ITransaction tx = session.BeginTransaction();
TaskType tt = new TaskType();
tt.Id = Guid.NewGuid();
tt.AccountSet = AccountSet.GetEntityByID(id);
tt.Name = "自动补货";
tt.Module = Module.GetEntity("任务管理");
session.Save(tt,tt.Id);
session.Flush();
tx.Commit();
session.Close();
当插入2条或2条以上数据后 报错 这是什么原因啊
急。。。。
NHibernateHelper NHH = new NHibernateHelper();
ISession session = NHH.GetCurrentSession();
ITransaction tx = session.BeginTransaction();
TaskType tt = new TaskType();
tt.Id = System.Guid.NewGuid();
tt.AccountSet = AccountSet.GetEntityByID(id);
tt.Name = "自动补货";
tt.Module = Module.GetEntity("任务管理");
session.Save(tt,Guid.NewGuid());
session.Flush();
tx.Commit();
session.Close();
不好意思 写错了 session.Save(tt,Guid.NewGuid()); 如果不这样写 一条数据都加不进去
错误时 Illegal attempt to associate a collection with two open sessions
在 session.Save(tt,Guid.NewGuid()); 处 展开
ISession session = NHH.GetCurrentSession();
ITransaction tx = session.BeginTransaction();
TaskType tt = new TaskType();
tt.Id = Guid.NewGuid();
tt.AccountSet = AccountSet.GetEntityByID(id);
tt.Name = "自动补货";
tt.Module = Module.GetEntity("任务管理");
session.Save(tt,tt.Id);
session.Flush();
tx.Commit();
session.Close();
当插入2条或2条以上数据后 报错 这是什么原因啊
急。。。。
NHibernateHelper NHH = new NHibernateHelper();
ISession session = NHH.GetCurrentSession();
ITransaction tx = session.BeginTransaction();
TaskType tt = new TaskType();
tt.Id = System.Guid.NewGuid();
tt.AccountSet = AccountSet.GetEntityByID(id);
tt.Name = "自动补货";
tt.Module = Module.GetEntity("任务管理");
session.Save(tt,Guid.NewGuid());
session.Flush();
tx.Commit();
session.Close();
不好意思 写错了 session.Save(tt,Guid.NewGuid()); 如果不这样写 一条数据都加不进去
错误时 Illegal attempt to associate a collection with two open sessions
在 session.Save(tt,Guid.NewGuid()); 处 展开
2个回答
展开全部
刚帮你查阅了下NHibernateHelper类,如果你需要关闭session的话需要调用NHibernateHelper中的CloseSession方法,否则在NHibernateHelper中会保留该session的key值,因此如果你第二次插入的时候又新建了一个session导致报错说你打开了两个session,
希望对你有所帮助。
希望对你有所帮助。

2024-11-19 广告
这方面更多更全面的信息其实可以找下大雅新。深圳市大雅新科技有限公司从事KVM延长器,DVI延长器,USB延长器,键盘鼠标延长器,双绞线视频传输器,VGA视频双绞线传输器,VGA延长器,VGA视频延长器,DVI KVM 切换器等,优质供应商,...
点击进入详情页
本回答由大雅新科技有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询