1

我相信以下应该有效:

IEnumerable<DataRow> d = myDataTable.AsEnumerable();

但事实并非如此!我得到:

错误 CS1061:类型System.Data.DataTable不包含定义并且找不到类型的AsEnumerable扩展方法(您是否缺少 using 指令或程序集引用?)AsEnumerableSystem.Data.DataTable

我有System.Data.DataSetExtensions作为参考,这是 Mono 3.5 和 MonoDevelop 2.4.2。我也有

using System;
using System.Data;
using System.Data.Linq;
using System.Collections.Generic;
4

1 回答 1

0

我不知道你的问题是什么,现在无法测试,但我肯定会从尝试直接调用扩展方法开始:

var rows = DataTableExtensions.AsEnumerable(myDataTable);

如果这是命名空间、类或方法问题,这将使您了解究竟是什么失败了。

顺便说一句,没有 Mono 3.5,所以您可能真的使用的是旧版本。
当前版本是2.10

Mono 版本不与 .NET 版本号一起使用,但是您可以期望 Mono 2.10 支持大部分 LINQ 优点(至少对于 .NET 而言DataSet)。

于 2011-08-09T20:59:03.203 回答