我应该如何最好地从 VB.net 查询我的数据集?

Posted

技术标签:

【中文标题】我应该如何最好地从 VB.net 查询我的数据集?【英文标题】:How should I best query my dataset from VB.net? 【发布时间】:2010-10-19 11:09:53 【问题描述】:

我有一个 VB.Net 数据集,其中包含来自多个表的数据。有没有人对如何从数据集中查询数据有什么好的建议。我想对数据集运行类似 SQL 的查询,以提取符合特定“where”语句的数据。

【问题讨论】:

【参考方案1】:

使用DataTable.Select() 方法。

这里有一些来自官方MSDN documentation的信息。

正如后面的帖子中所说,Linq 是另一种可能性,它可能会给你更多的多功能性,根据你自己的要求,你可能不需要。

【讨论】:

看起来是一个不错的可行选择,明天会检查一下,如果它适用于我的需要,请报告。 这种方法最适合我。这很简单,得到了我需要做的事情。易于理解。【参考方案2】:

如果您使用的是 .NET 3.5,则可以使用 LINQ to DataSet。

基本上,您使用DataTableExtensions.AsEnumerable(一种扩展方法)以IEnumerable<DataRow> 的形式访问行,然后您可以使用普通的LINQ to Object 运算符。 DataRowExtensions 扩展使这更简单。

如果您使用强类型 DataSet,查询看起来会更好。

DataTable.Select相比,我更喜欢这个选项——所有与转义、格式化字符串查询等有关的事情都感觉像是一个真正的倒退。

【讨论】:

看起来是一个不错的可行选择,明天会检查它,如果它适用于我的需要,请报告。【参考方案3】:

您应该尝试使用 Linq。

它将为您提供许多有关查询对象的功能。

尝试在此处获取更多信息:http://msdn.microsoft.com/en-us/netframework/aa904594.aspx

或 google 搜索 Linq to DataSets

【讨论】:

以上是关于我应该如何最好地从 VB.net 查询我的数据集?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 VB.Net 中正确地从内存中删除控件? [复制]

vb.net 解析查询灵活列名时出错

如何最好地从 Java/JDBC 中的 SQL 查询中检索 SELECT COUNT(*) 的结果 - Long?大整数?

vb.net 循环查询结果

VB.Net 中的类命名决策

如何使用 vb.net 从查询创建访问报告