NoReady 2016-11-01 22:31 采纳率: 0%
浏览 775

.net 事务的隔离级别,事务为什么事实上没有遵循原子性?

一、示意代码如下

 TransactionOptions transOption = new TransactionOptions();
transOption.IsolationLevel = System.Transactions.IsolationLevel.RepeatableRead;
using (TransactionScope ts = new TransactionScope(TransactionScopeOption.RequiresNew, transOption))
{
    //1、增加申请
    dal.Add(apply);

    //2、更新订单状态
    dalOrders.UpdateStatus(orderId, PaymentStatus.等待退款.GetHashCode());

    //提交事务
    ts.Complete();
}

二、运行环境

Windows2008 + .net Framework3.5 + SqServer2008R2,web服务器和Db服务器是分开的

三、问题现象

第1步成功了,第2步失败了,但事务没有回滚而是提交了。

四、请教大神

1、这是什么原因呢?
2、除了提高事务的隔离级别,还有别的办法吗?

  • 写回答

1条回答 默认 最新

  • zqbnqsdsmd 2016-11-04 04:20
    关注
    评论

    报告相同问题?

    悬赏问题

    • ¥15 burpsuite密码爆破
    • ¥15 关于#ubuntu#的问题,如何解决?(相关搜索:移动硬盘)
    • ¥15 scikit安装之后import不了
    • ¥15 Ros2编译一个使用opencv的c++节点的时候,报了这个错误,请问怎么解决啊
    • ¥15 人脸识别相关算法 YOLO,AI等
    • ¥15 spark问题方便加V17675797079
    • ¥15 Python代码不打印的原因
    • ¥20 微软SEAL库的安装和使用,VS2022环境配置问题
    • ¥15 数学问题也不知道那种类型的问题
    • ¥15 R作图的时候,文本框重叠了怎么办?