当前位置:Gxlcms >
数据库问题 >
NHibernet 事务 修改操作,事务没提交,数据库数据却同步(修改)了
NHibernet 事务 修改操作,事务没提交,数据库数据却同步(修改)了
时间:2021-07-01 10:21:17
帮助过:24人阅读
bool UpdateTrainPlanAndPro(TrainPlan trainPlan,List<Pro>
pros)
{
ISession ss =
NHibernateHelper.FrameworkDataProvider.Instance.GetSession();
ITransaction trans =
null;
using (trans =
ss.BeginTransaction())
{
try
{
ss.Update(trainPlan);
var proList = Session.CreateCriteria<Pro>().Add(Expression.Eq(
"TId", trainPlan.Id)).List<Pro>
();
Session.Clear();
foreach (
var item
in proList)
{
item.StudyHours =
trainPlan.TrainHours;
item.WorkTypeId =
trainPlan.WorkId;
ss.Update(item);
}
trans.Commit();
return true;
}
catch (Exception e)
{
trans.Rollback();
return false;
}
finally
{
trans.Dispose();
}
}
}
如果不添加标红语句,事务期间抛出异常,数据库的数据仍会修改
NHibernet 事务 修改操作,事务没提交,数据库数据却同步(修改)了
标签:res nan 查询 bool on() framework provider 解决方法 type