C# 方法枚举中的两个候选项。其中
有人遇到过这个问题吗?我有两个相同的候选方法可枚举。在哪里 什么是Func'2和Func'3 当我尝试筛选可枚举项时C# 方法枚举中的两个候选项。其中,c#,.net,.net-4.0,C#,.net,.net 4.0,有人遇到过这个问题吗?我有两个相同的候选方法可枚举。在哪里 什么是Func'2和Func'3 当我尝试筛选可枚举项时 var subItems = itemsToShow.Where(item => item.Visible); 我有一个错误: 无法解析方法“Where(lambda表达式)”,候选项为 System.Collection.Generic.IEnumerable<T> Where<T>(this System.Collection.Generic.
var subItems = itemsToShow.Where(item => item.Visible);
我有一个错误:
无法解析方法“Where(lambda表达式)”,候选项为
System.Collection.Generic.IEnumerable<T> Where<T>(this System.Collection.Generic.IEnumerable<T>, System.Func'2) (in calss Enumerable)
System.Collection.Generic.IEnumerable<T> Where<T>(this System.Collection.Generic.IEnumerable<T>, System.Func'3) (in calss Enumerable)
System.Collection.Generic.IEnumerable其中(this System.Collection.Generic.IEnumerable,System.Func'2)(在calss Enumerable中)
System.Collection.Generic.IEnumerable其中(此System.Collection.Generic.IEnumerable,System.Func'3)(在calss Enumerable中)
在.NET3.5上,这项工作非常完美快速查看一下,会发现实际上有两个重载
一个只基于谓词进行筛选,第二个重载还考虑枚举中项的索引。
Func'3
和Func'2
表明它是一个具有2和3个类型参数的泛型类
我假设第一个用于Func
,其中T
是您先前定义的类型。
和Func
相同的加号索引器
Func
-它是一个谓词,接受类型为T
和int
的两个参数,并返回bool
尝试强制转换为IQueryable。类似这样:itemsToShow.AsQueryable()只需构建解决方案并查看详细错误。我的代码是一个可为空的布尔值。我的代码在.Net 3.5上运行,但在将framework版本更改为4之后就不起作用了。对于来这里寻求此错误消息解决方案的人来说,这与此示例无关:如果忘记使用两个等号,而只使用一个,则会出现相同的错误。所以var what=db.Items.Where(x=>x.Id=123);将给出相同的错误。