Python微信订餐小程序课程视频
https://edu.csdn.net/course/detail/36074
Python实战量化交易理财系统
https://edu.csdn.net/course/detail/35475
Sy.ExpressionBuilder是一套依赖于表达式树上的集成的查询组件。设计的初衷没别的,就为了少写代码,让查询业务可以变得更加模式化。可以从nuget 获取到该组件(目前支持 .net5 和.net6 版本)。
来到查询,查询实体需要继承 QueryPageModel或者 QueryModel,从名字也基本可以看出来,一个用于分页,一个无分页,你可以根据自己需求选用哪个方式,如下我选了带分页的方式。
public partial class AllManagerDto:QueryPageModel
这样这个查询实体就拥有了我们这个插件的大多数功能。
属性名称约束 为了方便处理各种属性类型,我做了一些属性名称的约定。
时间范围查询 =>属性名称 以 Start,End 结尾 ,生成条件为 >= 和<=。 数字范围查询 =>属性名称 以 Min,Max 结尾 ,生成条件为 >= 和<=。 字符串查询 => 名字需要和表字段一致,生成条件为 Contains。
编号查询必须是以Id结尾,不然如果编号为支付串的查询方式会以Contains形式查询。
例如:
///
/// 租户编号
///
public virtual int? TenantIdMin { get; set; }
///
/// 租户编号
///
public virtual int? TenantIdMax { get; set; }
///
/// 创建时间
///
public virtual DateTime? CreateTimeStart { get; set; }
///
/// 创建时间
///
public DateTime? CreateTimeEnd { get; set; }
///
/// 创建人编号
///
public virtual string? CreateUserId { get; set; }
View Code
特性约束 应用ConditionAttribute 特性,参数为 (字段名称,