索引:

目录索引

一.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 - 引用类型对象 .DeepClone() 深度克隆[深度复制] 工具 使用

    索引: 目录索引 一.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 - .Where() 之 .WhereSegment 根据条件 动态设置 Select查询条件 使用

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

  5. MyDAL - .UpdateAsync() 之 .SetSegment 根据条件 动态设置 要更新的字段 使用

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

  6. MyDAL - .UpdateAsync() 之 .Set() 使用

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

  7. MyDAL - .UpdateAsync() 使用

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

  8. MyDAL - in && not in 条件 使用

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

  9. MyDAL - like && not like 条件 使用

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

随机推荐

  1. Java学习路线图分析

     Java学习路线分析图 第一阶段 技术名称 技术内容 J2SE(java基础部分) java开发前奏 计算机基本原理,Java语言发展简史以及开发环境的搭建,体验Java程序的开发,环境变量的设置, ...

  2. Django Admin管理入门

    Django最强大的部分之一是自动管理界面.它从模型中读取元数据,以提供快速,以模型为中心的界面,受信任的用户可以在其中管理您网站上的内容.管理员的推荐用途仅限于组织的内部管理工具.它不是用于构建整个 ...

  3. Angular(01)-- 架构概览

    声明 本系列文章内容梳理自以下来源: Angular 官方中文版教程 官方的教程,其实已经很详细且易懂,这里再次梳理的目的在于复习和巩固相关知识点,刚开始接触学习 Angular 的还是建议以官网为主 ...

  4. iOS----------学习路线思维导图

    UI相关 Runtime OC特性 内存管理 Block 多线程 Runloop 网络相关 设计模式 架构 算法 第三方库

  5. Android为TV端助力之解决setOnItemSelectedListener一进来就自动执行一次的问题

    我们经常会遇到listview或者其他view设置setOnItemSelectedListener监听时,一加载界面,setOnItemSelectedListener监听就会自动执行一遍,导致你第 ...

  6. Linux下使用ntpdate进行时间同步

    转摘自Linux下使用ntpdate进行时间同步https://www.cnblogs.com/zhi-leaf/p/6281549.html1.安装ntpdate,执行以下命令 # yum inst ...

  7. mysql建数据库的字符集与排序规则

    1.字符集说明: 一般选择utf8.下面介绍一下utf8与utfmb4的区别. utf8mb4兼容utf8,且比utf8能表示更多的字符.至于什么时候用,看你的做什么项目了,到http://blog. ...

  8. oracle 常用索引分析,使用原则和注意事项

    本文参考: https://www.cnblogs.com/wishyouhappy/p/3681771.html https://blog.csdn.net/weivi001/article/det ...

  9. k.tt 研究下生成的逻辑代码:从壹开始前后端分离 [.netCore 填坑 ] 三十二║ 四种方法快速实现项目的半自动化搭建

    更新 1.更新小伙伴 @大龄Giser 提出好点子:试试VS的插件扩展:VSIX.ItemProject等,将T4模板给制作插件,这里先记下,有懂的小伙伴可以自己先试试,我会在以后更新. 2.感谢小伙 ...

  10. mac 下常用命令备忘录

    1.查看端口号 lsof -i: 2.杀死进程 kill 41321 3.查看文件夹文件 ls ls -l //看到文件及文件夹更多的内容 ls -a //隐藏的文件 ls -la //上面的组合 4 ...