初步代码完成,描述如下。

适用环境:
具有and关系的条件查询。

限制:
现在只能表达and的条件关系。
不具备缓存,数据量大的情况下,生成查询的TreeView将耗费大量时间。这让人非常难受.

细节:
ADO.Net,TreeView,DataGridView

使用代码如下:
TreeQueryManager Mgr = new TreeQueryManager();
Mgr.TreeView = this.QueryTree;    // 设定查询树控件
Mgr.File = "QuerySetting.xml";    // 设定查询树结构

Mgr.TableAdapter = tableadapter;    // 设定数据源适配器,换成你的适配器
Mgr.DataTable = datatable;        // 设定数据源表格,换成你的表格

结构:
TreeQueryManager -- 管理查询的基本环境
QueryNode -- 代表一个具体的限定条件 比如:姓名=张三
SchemaNode -- 代表同级的QueryNode的类型

下一步,加入缓存.

[2006.7.1更新]
觉得这个查询实在是太滥,不能查询复杂的数据(比如时间),没有缓存,无法截取数据库操作时间。准备重写。

代码:这里
posted on 2006-03-09 19:11  EpicBlue  阅读(243)  评论(0编辑  收藏  举报