Simple.Data 利用 .NET 4.0 动态类型技术 dynamic,令此对象支持想要的任何特性,如果使用过的脚本语言这样的写法就并不陌生(javascript、python),可简化类型转换代码,而且允许直接使用索引方式访问属性。
Simple.Data 主要常用类型有
| 名称 |
缩写 |
说明 |
| DynamicStrategy |
DS |
数据库 |
| DynamicTable |
DT |
数据表 |
| SimpleQuery |
SQ |
查询 |
| SimpleExpression |
SE |
条件表达式 |
| SimpleRecord |
SR |
记录 |
| SimpleList |
SL |
记录列表 |
| ObjectReference |
OR |
对象引用,DS.DT、DT.Field 都可转换为此对象 |
查询、关联、合计、函数 - Query、Join、Aggregate、Function
| 命令 |
参数 |
返回 |
说明 |
| Select |
OR[] |
SQ |
指定返回查询字段数据 |
| Star/AllColumns |
null |
SQ |
用于 Table,返回表所有字段数据 |
| Distinct |
null |
SQ |
用于 Column,过滤相同数据 |
| As |
str |
OR |
用于 Table、Column,设置列别名 |
| Where |
SE |
SQ |
更新标准 |
| Operators |
|
|
用于 Column,二元操作符+、-、*、/、%、==、!=、<、<=、>、>= |
| In |
obj[] |
OR |
用于 Column,in 语法 |
| Between |
num |
OR |
用于 Column,两个数值之间 1.to(20),也支持日期 |
| Like |
str |
OR |
用于 Column,模糊条件 |
| is null |
|
|
用于 Column,查询空值 |
| OrderBy |
OR |
SQ |
升序 |
| OrderByDescending |
OR |
SQ |
降序 |
| ThenBy |
OR |
SQ |
升序,OrderBy 后面使用 |
| ThenByDescending |
OR |
SQ |
降序,OrderBy 后面使用 |
| Natural Join |
|
|
外键关联 |
| Join |
DT |
SQ |
Join On |
| Left Join |
DT |
SQ |
LeftJoin On |
| With |
DT |
SQ |
eager-loaded,单个或多个记录 |
| WithOne |
DT |
SQ |
eager-loaded,单个记录 |
| WithMany |
DT |
SQ |
eager-loaded,多个记录 |
| Having |
SE |
OR |
用于 Column,Function 查询标准条件 |
| Min |
null |
OR |
用于 Column,最小值 |
| Max |
null |
OR |
用于 Column,最大值 |
| Avg |
null |
OR |
用于 Column,平均值 |
| Sum |
null |
OR |
用于 Column,合计 |
| Count |
null |
OR |
用于 Column,数量 |
| CountDistinct |
null |
OR |
用于 Column,过滤重复后的数量 |
| Length |
null |
OR |
用于 Column,字符长度 |
| ToScalar |
null |
object |
获取第一行第一列 |
| ToScalarList |
null |
IList<> |
获取所有行第一列 |
| ToScalarArray |
null |
object[] |
获取所有行第一列 |
| ToScalarOrDefault |
null |
object |
获取第一行第一列或默认 |
| Implicit Casting |
|
|
强类型转换,可直接赋值给予定义变量 |
| Cast |
|
IEnumerable |
强类型转换 |
| ToList |
|
IList |
获取数据对象列表 |
| ToList |
|
IList |
获取数据对象列表 |
| ToArray |
|
dynamic[] |
获取数据对象数组,遍历速度高于列表 |
| ToArray |
|
IList |
获取数据对象数组 |
| Skip |
int |
SQ |
忽略记录数量 |
| Take |
int |
SQ |
提取记录数量 |
| WithTotalCount |
|
SQ |
记录总数 |
| First |
|
SQ |
获取第一行数据 |
| FirstOrDefault |
|
SQ |
获取第一行数据或 null |
| Single |
|
SQ |
获取第一行数据 |
| SingleOrDefault |
|
SQ |
获取第一行数据或 null |