Entity framework 如何在实体框架中获取仅回滚失败记录的SaveChanges方法?
我有一个场景,我想在数据库表中插入数百条记录,并将它们作为块(例如10条记录)插入,我需要实体框架仅回滚失败的记录并将失败的记录返回给我 我的第一个问题是,我如何才能做到这一点 我的第二个问题是,无论我上面提到的情况如何,是否有插入大量记录的良好做法Entity framework 如何在实体框架中获取仅回滚失败记录的SaveChanges方法?,entity-framework,transactions,Entity Framework,Transactions,我有一个场景,我想在数据库表中插入数百条记录,并将它们作为块(例如10条记录)插入,我需要实体框架仅回滚失败的记录并将失败的记录返回给我 我的第一个问题是,我如何才能做到这一点 我的第二个问题是,无论我上面提到的情况如何,是否有插入大量记录的良好做法 StatelessSession session=factory.openStatelessSession(); StatelessSession session = factory.openStatelessSession(); Transact
StatelessSession session=factory.openStatelessSession();
StatelessSession session = factory.openStatelessSession();
Transaction tx = session.beginTransaction();
for(int i = 0; i < resultItems.size(); i++) {
try
{
Customer cust = new Customer(resultItems.get(i));
Long id = session.save(cust); // get the generated id
}
catch(Exception e)
{
//track your exceptional customer here
System.out.println("customer not added ="+resultItems.get(i).custorName)
}
if(i % BATCH_SIZE == 0) {
session.flush();
session.clear();
}
}
tx.commit();
session.close();
事务tx=会话.beginTransaction();
对于(int i=0;i