【发布时间】:2012-10-17 14:57:15
【问题描述】:
我已经在其他解决方案中多次这样做了。但在其中一个中,它不起作用。不知道为什么。
我想在一些数据表中使用Where()。所以,例如,我会这样做
int someId;
DatasetName.DatatableName.AsEnumerable().Where(x => x.id == someId);
但在这个项目中,它无法识别 lambda x => x.id == someId
这是为什么呢?我不能使用它们。智能感知,在Where 中的( 之后识别需要接收Func,而当我接收x => x. 时,它无法识别DataTable 的字段。为什么我不能x.id ?我知道我可以使用Field<>()(我认为这是名称),但我已经多次直接使用这些表达式,我认为它们更具可读性。而在其他解决方案中确实可以做到这一点。
我已经添加了
的引用using System.Linq;
using System.Data.Linq;
using System.Linq.Expressions;
它不编译,也不识别数据表的任何字段。
该项目设置为.Net Framework 3.5。
任何帮助将不胜感激
【问题讨论】:
标签: c# .net linq lambda datatable