MyDAL - .ExistAsync() 使用
索引:
一.API 列表
.ExistAsync()
用于 单表/多表连接 查询
二.API 单表-便捷 方法 举例
1.单表-便捷, 判断是否存在方法
1 var date = DateTime.Parse("2018-08-20 20:33:21.584925"); 2 var id = Guid.Parse("89c9407f-7427-4570-92b7-0165590ac07e"); 3 4 // 判断 AlipayPaymentRecord 表中是否存在符合条件的数据 5 bool res1 = await Conn.ExistAsync<AlipayPaymentRecord>(it => it.CreatedOn == date && it.OrderId == id);
生成 SQL 如下, 在返回结果时 ExistAsync API 中会判断结果是否 >0 ,返回 true or false :
1 select count(*) 2 from `AlipayPaymentRecord` 3 where ( `CreatedOn`=@CreatedOn__2 && `OrderId`=@OrderId__3);
三.API 单表-完整 方法 举例
1.单表-完整, 判断是否存在方法
1 var pk2 = Guid.Parse("002c1ca9-f2df-453a-87e0-0165443dcc31"); 2 3 // 判断 Agent 表 中 是否存在符合条件的数据 4 var res2 = await Conn 5 .Queryer<Agent>() 6 .Where(it => it.Id == pk2) 7 .ExistAsync();
生成 SQL 如下
1 select count(*) 2 from `Agent` 3 where `Id`=@Id__1;
四.API 多表连接-完整 方法 举例
1.多表连接-完整, 判断是否存在方法
1 var pk2 = Guid.Parse("002c1ca9-f2df-453a-87e0-0165443dcc31"); 2 3 // 判断 Agent表 与 AgentInventoryRecord表 连接下, 是否存在符合条件数据 4 bool res4 = await Conn 5 .Queryer(out Agent agent4, out AgentInventoryRecord record4) 6 .From(() => agent4) 7 .InnerJoin(() => record4) 8 .On(() => agent4.Id == record4.AgentId) 9 .Where(() => agent4.Id == pk2) 10 .ExistAsync();
生成 SQL 如下
1 select count(*) 2 from `Agent` as agent4 3 inner join `AgentInventoryRecord` as record4 4 on agent4.`Id`=record4.`AgentId` 5 where agent4.`Id`=@Id__4;
蒙
2019-01-02 19:25 周三