我相信以下内容应该有效:
IEnumerable<DataRow> d = myDataTable.AsEnumerable();
但事实并非如此!我明白了:
错误CS1061:类型
System.Data.DataTable
不包含AsEnumerable
的定义,并且找不到类型AsEnumerable
的扩展方法System.Data.DataTable
(您是否缺少using指令或汇编参考?)
我有System.Data.DataSetExtensions
作为参考,这是Mono 3.5和MonoDevelop 2.4.2。我也有
using System;
using System.Data;
using System.Data.Linq;
using System.Collections.Generic;
答案 0 :(得分:0)
我不知道你的问题是什么,现在无法测试,但我肯定会尝试直接调用扩展方法:
var rows = DataTableExtensions.AsEnumerable(myDataTable);
如果这是一个名称空间,类或方法问题,这将使您对完全失败的内容有所了解。
顺便说一句, there is no Mono 3.5 ,所以您可能真的使用旧版本。
当前版本为2.10。
Mono版本不支持.NET版本号,但是你可以期望Mono 2.10支持大部分LINQ优点(至少对DataSet
而言)。