2

这个问题很简单,答案可能不是。基本上,在我的应用程序中,我在内存中有一个数据集。这个数据集有一些 dataTables 和一些 dataRelations。我想允许最终用户添加一个作为查询结果的数据表。用户还应该能够指定他的数据表和默认数据表之间的一种(或更多)关系。他应该不能删除或修改原始数据集。

这是显示控件应如何工作的图像: 数据集编辑器

不需要以可视方式删除/修改关系或删除/修改数据表的能力。像下面这样的向导就足够了: 数据表编辑器

关系编辑

图片来自这个页面: http: //www.devart.com/dotconnect/mysql/docs/DataSetEditor.html

从头开始创建我自己的控件肯定不是微不足道的,所以我正在寻找可以使用(或易于修改)的东西。如果您曾经使用过 Visual Studio 数据集设计器,您应该明白我在寻找什么。事实上,我想要一个类似于 DataSet Designer 的控件,但能够“锁定”一些数据表和数据关系,并能够根据查询结果添加可编辑的数据表。

如果不够清楚,请询问更多信息。谢谢你。

编辑:当然,默认数据集不是查询的结果。在这种情况下,我可以允许最终用户编辑原始查询添加joinunion等等。我提供的数据集是精心设计的结果,因此它仅“存在”于内存中。也许,我可以将它保存在数据库内的临时表中。无论如何,在探索这个解决方案之前,最好有一个可视化工具而不是查询编辑器......

EDIT2:网上冲浪我发现了这个 SQL 工具: http: //www.atlantis-interactive.co.uk/products/schemasurf/default.aspx。我正在寻找的是类似的,但应该是一个 WinForm 控件。它应该接受任何类型的数据集,而不仅仅是 SQL。

4

1 回答 1

0

网络上似乎没有这样的控件。我创建了自己的编辑器,大部分是文本方式。对于表描述,我使用了 TreeList。我对关系描述所做的相同。我没有为 SQL 使用任何特殊的编辑器。现在,我刚刚检查了文本是否以“SELECT”开头。

为了转换 DataTable 中的任何 IEnumerable,我查看了MoreLINQ

于 2013-01-14T10:32:43.090 回答