MyDAL - .IsExistAsync() 使用

时间:2022-09-02 11:58:43

索引:

目录索引

一.API 列表

  .IsExistAsync()

    用于 单表 / 多表连接 查询

二.API 单表-便捷 方法 举例

  1.单表-便捷, 判断是否存在方法

             var date = DateTime.Parse("2018-08-20 20:33:21.584925");
var id = Guid.Parse("89c9407f-7427-4570-92b7-0165590ac07e"); // 判断 AlipayPaymentRecord 表中是否存在符合条件的数据
bool res1 = await Conn.IsExistAsync<AlipayPaymentRecord>(it => it.CreatedOn == date && it.OrderId == id);

    以 MySQL 为例,生成 SQL 如下, 在返回结果时 IsExistAsync API 中会判断结果是否 >0 ,返回 true or false :

 select  count(*)
from `AlipayPaymentRecord`
where ( `CreatedOn`=?CreatedOn_2 && `OrderId`=?OrderId_3);

三.API 单表-完整 方法 举例

  1.单表-完整, 判断是否存在方法

             var pk2 = Guid.Parse("002c1ca9-f2df-453a-87e0-0165443dcc31");

             // 判断 Agent 表 中 是否存在符合条件的数据
bool res2 = await Conn
.Queryer<Agent>()
.Where(it => it.Id == pk2)
.IsExistAsync();

    以 MySQL 为例,生成 SQL 如下:

 select  count(*)
from `Agent`
where `Id`=?Id_1;

四.API 多表连接-完整 方法 举例

  1.多表连接-完整, 判断是否存在方法

             var pk2 = Guid.Parse("002c1ca9-f2df-453a-87e0-0165443dcc31");

             // 判断 Agent表 与 AgentInventoryRecord表 连接下, 是否存在符合条件数据
bool res4 = await Conn
.Queryer(out Agent agent4, out AgentInventoryRecord record4)
.From(() => agent4)
.InnerJoin(() => record4)
.On(() => agent4.Id == record4.AgentId)
.Where(() => agent4.Id == pk2)
.IsExistAsync();

    以 MySQL 为例,生成 SQL 如下:

 select  count(*)
from `Agent` as agent4
inner join `AgentInventoryRecord` as record4
on agent4.`Id`=record4.`AgentId`
where agent4.`Id`=?Id_4;

                                         蒙

                                    2019-01-02 19:25 周三

                                    2019-02-08 14:48 周五

                                    2019-04-12 23:40 周五

MyDAL - .IsExistAsync() 使用的更多相关文章

  1. MyDAL - 引用类型对象 &period;DeepClone&lpar;&rpar; 深度克隆&lbrack;深度复制&rsqb; 工具 使用

    索引: 目录索引 一.API 列表 .DeepClone() 用于 Model / Entity / ... ... 等引用类型对象的深度克隆 特性说明 1.不需要对对象做任何特殊处理,直接 .Dee ...

  2. MyDAL - 组件适用范围说明

    索引: 目录索引 一.组件特性简介: 1.MSIL 底层代码采用 System.Reflection.Emit.Lightweight 类库使用 IL 的方式处理 Model 组装,性能刚刚的~ 2. ...

  3. MyDAL - 快速使用

    索引: 目录索引 一.安装 在 VS 中执行一下 package 命令: PM> Install-Package MyDAL 二.API-快速使用 1.命名空间,只需: using MyDAL; ...

  4. MyDAL - &period;Where&lpar;&rpar; 之 &period;WhereSegment 根据条件 动态设置 Select查询条件 使用

    索引: 目录索引 一.API 列表 1.WhereSegment 属性,指示 根据条件 动态拼接 where 查询过滤条件 见如下示例. 二.API 单表-完整 方法 举例 // 上下文条件 变量 v ...

  5. MyDAL - &period;UpdateAsync&lpar;&rpar; 之 &period;SetSegment 根据条件 动态设置 要更新的字段 使用

    索引: 目录索引 一.API 列表 1.SetSegment 属性,指示 根据条件 动态拼接 要修改的字段 见如下示例. 二.API 单表-完整 方法 举例 // update 要赋值的变量 var ...

  6. MyDAL - &period;UpdateAsync&lpar;&rpar; 之 &period;Set&lpar;&rpar; 使用

    索引: 目录索引 一.API 列表 1.Set<M, F>(Expression<Func<M, F>> propertyFunc, F newVal) 如: .S ...

  7. MyDAL - &period;UpdateAsync&lpar;&rpar; 使用

    索引: 目录索引 一.API 列表 1.UpdateAsync() 用于 单表 更新操作 二.API 单表-便捷 方法 举例-01 var pk1 = Guid.Parse("8f2cbb6 ...

  8. MyDAL - in &amp&semi;&amp&semi; not in 条件 使用

    索引: 目录索引 一.API 列表 C# 代码中 接口 IList.Contains() 方法生成 SQL 对应的 in(val1,val2,... ...) 如:.Queryer<Agent& ...

  9. MyDAL - like &amp&semi;&amp&semi; not like 条件 使用

    索引: 目录索引 一.API 列表 C# 代码中 String.Contains("conditionStr") 生成 SQL 对应的 like '%conditionStr%' ...

随机推荐

  1. &period;添加索引和类型,同时设定edgengram分词和charsplit分词

    1.添加索引和类型,同时设定edgengram分词和charsplit分词 curl -XPUT 'http://127.0.0.1:9200/userindex/' -d '{   "se ...

  2. Mac Mini中添加VNC访问

    开启Mac Mini上面的VNC. 1) 打开“系统偏好设置”(System Preference),双击打开“共享”(Sharing)项. 2)在左侧将“屏幕共享”(Screen sharing) ...

  3. 在Swift中应用Grand Central Dispatch&lpar;下)

    在第一部分中, 你学到了并发,线程以及GCD的工作原理.通过使用dispatch_barrrier和dispatch_sync,你做到了让 PhotoManager单例在读写照片时是线程安全的.除此之 ...

  4. Java事务处理全解析(六)—— 使用动态代理(Dynamic Proxy)完成事务

    在本系列的上一篇文章中,我们讲到了使用Template模式进行事务管理,这固然是一种很好的方法,但是不那么完美的地方在于我们依然需要在service层中编写和事务处理相关的代码,即我们需要在servi ...

  5. WinForm 弹框确认后执行

    if (MessageBox.Show("你确定要退出程序吗?", "确认", MessageBoxButtons.OKCancel, MessageBoxIc ...

  6. Data Base MongoDB 插入时间不正确的问题

    关于mongodb插入时间不正确的问题 mongodb插入时间: 把本地时间转换为utc时间:  也就是比本地时间少8个小时: 读取的时候又会转换本地时间: 所有一般不需处理:

  7. ActivityManager&colon; Warning&colon; Activity not started&comma; its current task has been brought to the front 的的问题

    运行android程序的时候提示:ActivityManager: Warning: Activity not started, its current task has been brought t ...

  8. 防范CSRF(一)

    CSRF是跨网站伪造请求的缩写.大致的攻击流程是,黑客获得浏览器向服务器发送的请求,然后对请求进行修改,让服务器执行指定的操作. 防范方式可以使用微软提供的解决方案. View放置Html.AntiF ...

  9. 内功心法 -- java&period;util&period;ArrayList&lt&semi;E&gt&semi; &lpar;1&rpar;

    写在前面的话:读书破万卷,编码如有神--------------------------------------------------------------------下文主要对java.util ...

  10. hdu-1251(字典树)

    字典树模板题. ps:数组要开大,40w左右才行,不然疯狂re 代码: #include<iostream> #include<algorithm> #include<c ...