【发布时间】:2013-09-21 21:26:06
【问题描述】:
我是 Linq 语法的新手,遇到错误
“无法将类型'
System.Collections.Generic.IEnumerable<System.Reflection.MethodInfo>'隐式转换为'System.Collections.Generic.IEnumerable<System.Reflection.MethodBase>'。存在显式转换(您是否缺少强制转换?)”
在我的应用程序的以下行
IEnumerable<MethodBase> methods =
from p in defaultMembers.OfType<PropertyInfo>()
select p.GetGetMethod() into m
where m != null
select m;
有什么想法吗?谢谢
【问题讨论】:
-
您的代码运行良好。你确定那是导致问题的线路吗?
-
我正在处理一些其他代码,当我在 .net 框架 4.0 中构建它时,它构建得很好,但在 3.5 中没有构建,并且出现上述错误
-
好的,我知道问题出在哪里了。
IEnumerable<T>在 .NET 3.5 中不是协变的