新增文章
文章标题
分类
C#
云星空
K3 BOS
K3 功能
用友
Oracle
python
SQL
MySql
PHP
HTML
script
windows
Access
影视后期
财务
服务
生活
内容
// 必须引用System.Transactions.dll using (KDTransactionScope trans = new KDTransactionScope(System.Transactions.TransactionScopeOption.Required)) { IOperationResult saveResult1 = saveService.Save(ctx, customer_info1, DynamicObjectList, null, "Save"); if (saveResult1 != null && saveResult1.IsSuccess == true) { IOperationResult saveResult2 = saveService.Save(ctx, customer_info2, DynamicObjectList, null, "Save"); } trans.Complete(); } 如果saveResult1 成功,saveResult2失败,是否需要这样判断 ,saveResult1 成功saveResult2失败就无法处理 if (saveResult2 != null && saveResult2.IsSuccess == true) trans.Complete(); using (KDTransactionScope scope = new KDTransactionScope(TransactionScopeOption.Required)) { DBUtils.ExecuteBatch(this.Context, lstSql); scope.Complete(); } //using Kingdee.BOS.App.Datausing (KDTransactionScope tran = new KDTransactionScope(TransactionScopeOption.Required)){//TODO:} //外围事务 using (KDTransactionScope trans = new KDTransactionScope(TransactionScopeOption.Required)) { ... try { //使用的是外围事务,如果发生异常,则外围事务也发生异常,即使使用try/catch吃掉异常,外围事务也处于异常状态(一般是abort状态) //无需担心阻塞问题,可以对相同的表进行各种操作 using (KDTransactionScope trans1 = new KDTransactionScope(TransactionScopeOption.Required)) { ... trans1.Complete(); } //新建一个事务,外围事务发生异常不影响它,它发生异常,如果异常被吃掉不影响外围事务 //需要特别主要阻塞和死锁 using (KDTransactionScope trans1 = new KDTransactionScope(TransactionScopeOption.RequiresNew)) { ... trans1.Complete(); } //屏蔽事务 using (KDTransactionScope trans1 = new KDTransactionScope(TransactionScopeOption.Suppress)) { ... // trans1.Complete(); } } catch (Exception ex) { } trans.Complete(); }
返回
保存