Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#无法将lambda表达式转换为类型';动态';因为它不是委托类型_C#_List_Dynamic - Fatal编程技术网

C#无法将lambda表达式转换为类型';动态';因为它不是委托类型

C#无法将lambda表达式转换为类型';动态';因为它不是委托类型,c#,list,dynamic,C#,List,Dynamic,假设我有一个 List<dynamic> myList = new List<dynamic>(); 无法将lambda表达式转换为类型“dynamic”,因为它不是委托类型 我可以通过迭代列表来完成: 但是为什么我不能使用包含?因为约束声明为: public bool Contains( T item ) 您应该使用Any(您的lambda)Contains()而不是委托,我想您需要Any(): 没有需要lambda的重载。哦,天哪,我完全忘记了。在c#中,

假设我有一个

List<dynamic> myList = new List<dynamic>();
无法将lambda表达式转换为类型“dynamic”,因为它不是委托类型

我可以通过迭代列表来完成:
但是为什么我不能使用
包含

因为
约束
声明为:

public bool Contains(
    T item
)
您应该使用
Any(您的lambda)
Contains()
而不是委托,我想您需要
Any()


没有需要lambda的重载。

哦,天哪,我完全忘记了。在c#中,这是一种非常有趣的混合方式。我有一个开源框架,它可以获取一系列接口,并生成一个真正轻量级的代理,该代理继承这些接口,基本上封装了一组转发给DynamicObject的callsite绑定。你可能会对它感兴趣。你的框架非常有趣,jbtule。我会深入研究一会儿。
if (myList.Contains((item)=>item.GetType().Equals(indexes[0].GetType())){
public bool Contains(
    T item
)
 if (myList.Any( item => item.GetType().Equals(indexes[0].GetType()))
 {