.net Dapper 实践系列(6) ---事务删除(Layui+Ajax+Dapper+MySQL)

mac2022-06-30  58

目录

写在前面实现步骤写在最后

写在前面


上一小节,总结了事务多表更新的两种方法。一个是只更新原来的数据,一个是先删除原来的数据再往里面添加新的数据。而这一小节,说的是事务的多表删除。

实现步骤


1.在BorrowBook控制器中 创建Del方法 执行删除单表记录

/// <summary> /// 删除单表数据 /// </summary> /// <param name="Id">参数Id</param> /// <returns>成功返回1,失败返回0</returns> public int Del(string Id) { int result = 0; string sql_del = "delete from sys_Borrow_Book where book_Id=?book_Id"; //动态参数 DynamicParameters pr = new DynamicParameters(); pr.Add("?book_Id", Id); result = DapperDBContext.Execute(sql_del, pr); return result; }

2.在BorrowBook控制器中 创建Dels方法 执行删除多表记录

/// <summary> /// 删除多表数据 /// </summary> /// <param name="Id">参数Id</param> /// <returns>成功返回1,失败返回0</returns> public int Dels(string Id) { int result = 0; string sql_del = "delete from sys_Borrow_Book where book_Type_id=?id"; string sql_dels = "delete from sys_Book_Type where book_Type_id=?id"; var para = new List<Tuple<string, object>>(); Tuple<string, object> temp1; //动态参数 DynamicParameters pr = new DynamicParameters(); pr.Add("?book_Id", Id); temp1 = new Tuple<string, object>(sql_del, pr); para.Add(temp1); temp1 = new Tuple<string, object>(sql_dels, pr); para.Add(temp1); bool boolresult = DapperDBContext.ExecuteTransaction(para).Item1; if (boolresult == true) { result = 1; } return result; }

3.在View视图中 加载数据Load方法拼接字符串最后

/*删除*/ $(".btndel").click(function () { var Id = $(this).attr("id"); if (Id != null) { layer.confirm('是否确定删除?', { btn: ['确定', '取消'] //按钮 }, function () { $.get("../BorrowBook/Del?Id=" + Id, function (msg) { if (msg > 0) { layer.msg("删除成功!", { icon: 1 }); Load(); } else { layer.msg("删除失败!", { icon: 2 }); return; } }); }); } else { layer.msg("未选择删除记录", { icon: 3 }); return;} });

写在最后


至此,整个项目的搭建和功能的已经全部实现。注意: 此次的实践,只在开发环境中测试过。没有认真的在生产环境中测试过。所以,还会有存在不少的问题。仅供实现思路的参考。

转载于:https://www.cnblogs.com/ZengJiaLin/p/11346157.html

相关资源:.net core dapper CRUD例子(前段用bootstrap ajax).zip
最新回复(0)