mirror of
https://github.com/dotnetcore/FreeSql.git
synced 2026-02-06 16:30:52 +08:00
update
3
事务.md
3
事务.md
@@ -13,6 +13,7 @@ FreeSql现实了简单数据库事务方法,脏读等事务相关方法均未
|
||||
```csharp
|
||||
//假设已经有了其他wiki页的IFreeSql声明
|
||||
fsql.Transaction(() => {
|
||||
|
||||
var affrows = fsql.Update<User>().Set(a => a.Wealth - 100)
|
||||
.Where(a => a.Wealth >= 100)
|
||||
//判断别让用户余额扣成负数
|
||||
@@ -21,6 +22,7 @@ fsql.Transaction(() => {
|
||||
throw new Exception("用户余额不足");
|
||||
//抛出异常,事务退出
|
||||
}
|
||||
|
||||
affrows = fsql.Update<Goods>().Set(a => a.Stock - 1)
|
||||
.Where(a => a.Stock > 0)
|
||||
//判断别让用库存扣成负数
|
||||
@@ -30,6 +32,7 @@ fsql.Transaction(() => {
|
||||
//抛出异常,回滚事务,事务退出
|
||||
//用户余额的扣除将不生效
|
||||
}
|
||||
|
||||
//程序执行在此处,说明都扣成功了,事务完成并提交
|
||||
});
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user