AStar低代码平台RpcServiceBase的应用:客户端事务管理
- 互联网
- 2025-08-27 05:12:02

由于AStar平台是基于RPC协议与AStar后端服务进行通讯,而又非常接近常规BS的编码方式,直接写SQL即可对数据库进行操作,那么如果有若干个访问需要在同一事务中进行的,如何处理?比如先生成临时表,再对临时表进行若干统计输出多个结束集。
下面是个例子:
String trxId = await RpcService.Lock(Session.Account); //先根据账套锁定返回交易id try { await RpcService.BeginTrans(trxId); //开始事务 try { await dbf10(sql_rpt_m1_create_tm, parm, trxId); //所有rpc远程访问都基于这个交易trxId await RpcService.Query("select * from zb_", parm, dataSetd.Tables["rpt_sum_1_tm"], true, trxId: trxId); await RpcService.Query(sql_rpt_m1_td, parm, dataSetd.Tables["rpt_sum_1_td"], true, trxId: trxId); } finally { await RpcService.Rollback(trxId); //因为这是报表,所以回滚即可,如果是更新操作,要用RpcService.Commit } } finally { await RpcService.Release(trxId); //最后要释放这个交易id }AStar低代码平台RpcServiceBase的应用:客户端事务管理由讯客互联互联网栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“AStar低代码平台RpcServiceBase的应用:客户端事务管理”
上一篇
问题记录汇总
下一篇
【C++八股】内存对⻬