1

我从数据表中对 Linq 进行了以下使用:

  var query = dt.AsEnumerable();
query = dt.AsEnumerable().Where(log => log.Field<byte>("Day") == day).Take(10);

以下错误:

无法将类型隐式转换 'System.Collections.Generic.IEnumerable<System.Data.DataRow>''System.Data.EnumerableRowCollection<System.Data.DataRow>'. 存在显式转换(您是否缺少演员表?)

我试过 take(10) - 请你给点建议?

4

1 回答 1

4

错误本身是否肯定指向那条线?如果您尝试过,我希望您能做到:

var query = dt.AsEnumerable();
query = query.Where(log => log.Field<byte>("Day") == day).Take(10);

query在这种情况下,您可以通过将类型更改为显式来修复它IEnumerable<DataRow>

(如果这不是问题,请给我们更多的背景信息。一个简短但完整的方法来演示手头的问题会有所帮助。)

于 2011-12-12T13:42:08.047 回答