Farseer.net轻量级ORM开源框架 V1.0 开发目标
本篇主要给大家说明下在V1.0中,计划开发的任务的状态。按照国际惯例、上大表格
开发计划状态
编号 | 模块 | 状态 | 说明 |
1 | 分离Utils、Extend、UI | √ | 在V0.2版本中,是集成在一个项目里,现在已经各有自独立成4个项目文件了,需要时才引用。 |
2 | TableContext | √ | 表上下文 |
3 | TableSet | √ | 表查询 |
4 | ProcContext | √ | 存储过程上下文 |
5 | ProcSet | √ | 存储过程查询 |
6 | ViewContext | √ | 视图上下文 |
7 | ViewSet | √ | 视图查询 |
8 | 合并SQL提交 | √ | 将多次操作,合并成一次数据库交互 |
9 | 合并SQL延迟加载 | √ | 在合并SQL模式下,未调用SaveChange()时,不作任何操作。包括SQL生成、参数组装。 |
10 | SQL参数封装 | √ | 封装SQL的参数,在合并SQL模式下,智能合并同一个参数。(同值、同类型,合并成一个) |
11 | SQL生成 | √ | 生成各种CURD操作。(原V0.2支持的操作) |
12 | Where表达式树 | √ | 对Where条件的解析 |
13 | Select表达式树 | √ | 对Select条件的解析 |
14 | OrderBy表达式树 | √ | 对OrderBy条件的解析 |
15 | 实体类自定义SQL方法 | √ | 如:OrderBy a+b Desc // a+b为自定义的方式。V0.2已支持。 |
16 | 事务 | √ | 支持事务操作 |
17 | Sql队列 | √ | 对数据库的CURD操作,在合并SQL模式下,都被加入到IQueryQueue队列中 |
18 | 基于面向接口编程 | √ | 与V0.2不同,设计模式上进行了完全重构。完全基于抽象接口编程。 |
19 | SqlServer数据库支持 | √ | 对数据库的查询操作支持 |
20 | MySql数据库支持 | √ | 对数据库的查询操作支持 |
21 | OleDb数据库支持 | √ | 对数据库的查询操作支持 |
22 | Oracle数据库支持 | √ | 对数据库的查询操作支持 |
23 | SQLite数据库支持 | √ | 对数据库的查询操作支持 |
24 | 开放生成的SQL语句 | |
方便开发者,能实时获取生成的SQL语句情况。 |
25 | 内置内存数据 | |
在不联网数据库时,也可以让系统正常运行。(为了跑测试) |
26 | 集成SQL报告分析 | √ | 与V0.2不同,V0.2是生成页面,计划这个版本通过工具来查看结果。 |
27 | 新增Group By | |
新增SQL支持。 |
28 | 新增JOIN | |
新增join中的inner、outer、left的支持。 |
29 | Emit IDataReader转换 | √ | IDataReader 转换成实体(已改为表达式树委托转换) |
30 | Emit DataTable转换 | √ | DataTable 转换成实体(已改为表达式树委托转换) |