我正在考虑创建一个非常基本的查询编辑器(或称为数据过滤器),您可以使用该编辑器创建AND
和OR
的基本查询。如下所示:
(FirstName
等于Brown
而LastName
以L
开头)或Age
小于10
这将是一个可视化查询编辑器,类似于Telerik's Data Filter。
我想知道如何为这样的控件设计API,以便它可以重复使用并且可以轻松连接到不同的情况。
我在想的是 ,查询编辑器首先会得到列名和列类型。所以也许它可以得到类似List<KeyValuePair<string, Type>
的东西。
然后对于我当前的项目,我需要获得一个SQL表示,因此可以有一个方法返回SQL查询的“WHERE”部分。但这不是非常可重复使用的。如果其他东西需要使用此控件,则需要首先解析控件返回的SQL语句。
我想从你那里得到想法,有什么可以让这个东西重复使用?它应该以什么形式返回结果查询?我是WPF的新手,所以我想知道是否有一些很酷的通用方法可以用于生成的查询。
此外我还在学习MVVM,所以如果你能指出如何使这个东西在MVVM项目中可用,那就太好了。