我完全不熟悉 LINQ
,现在正试图用它查询我的 DataSet
数据。我严格按照这个示例操作,但却没有成功。
我知道我的 DataTable
需要在末尾加上 .AsEnumerable
,但是这个方法无法被 IDE
识别。我做错了什么吗?我是否漏掉了一个参考或引入,这个在示例中没有展示(微软的示例可能不总是准确的),如果是的话,是哪一个呢?或者是其他问题导致的错误?
样例代码:
Imports System
Imports System.Linq
Imports System.Linq.Expressions
Imports System.Collections.Generic
Imports System.Data
Imports System.Data.SqlClient
Imports System.Data.Common
Imports System.Globalization
//Fill the DataSet.
Dim ds As New DataSet()
ds.Locale = CultureInfo.InvariantCulture
//See the FillDataSet method in the Loading Data Into a DataSet topic.
FillDataSet(ds)
Dim products As DataTable = ds.Tables("Product")
Dim query = From product In products.AsEnumerable() _
Select product
Console.WriteLine("Product Names:")
For Each p In query
Console.WriteLine(p.Field(Of String)("Name"))
Next
我的项目中的引用包括:
System
System.Data
System.Drawing
System.Windows.Forms
System.Xml
using
语句使得命名空间在文件/类中可用。因为它是一个扩展方法,所以当作为扩展使用时,您不能使用完整的命名空间引用它,因此必须包含命名空间。 - tvanfossonSystem.Data.DataSetExtensions
(C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETFramework\v4.5.2\System.Data.DataSetExtensions.dll),并且有必要的using System.Data
和using System.Data.DataSetExtensions
,但是我仍然得到错误提示:"The type or namespace name 'DataSetExtensions' does not exist in the namespace 'System.Data' (are you missing an assembly reference?)"。 - Tim