Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.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# 从动态对象列表中删除对象_C#_Linq_Dynamic - Fatal编程技术网

C# 从动态对象列表中删除对象

C# 从动态对象列表中删除对象,c#,linq,dynamic,C#,Linq,Dynamic,如果有任何建议,请告诉我。 谢谢 错误:删除不适用于动态对象 在此基础上,IList的Remove方法接受类型为T的参数: Data.Remove(result); 2) 当您将结果传递给删除时,强制转换该结果: ExpandoObject result = ... 我想通过这些方法之一,你的问题就会解决。祝你好运。当你通过时,你是否尝试过将结果转换回扩展对象?你能发布准确的错误消息吗?这是否回答了你的问题?LINQ表达式正在将ExpandoObject强制转换为dynamic,因此作为将结

如果有任何建议,请告诉我。 谢谢

错误:删除不适用于动态对象

在此基础上,
IList
Remove
方法接受类型为
T
的参数:

Data.Remove(result);
2) 当您将
结果传递给
删除
时,强制转换该结果:

ExpandoObject result = ...

我想通过这些方法之一,你的问题就会解决。祝你好运。

当你通过时,你是否尝试过将
结果
转换回
扩展对象
?你能发布准确的错误消息吗?这是否回答了你的问题?LINQ表达式正在将
ExpandoObject
强制转换为
dynamic
,因此作为将
结果
声明为
ExpandoObject
(#1)的一部分,您必须将LINQ表达式的结果强制转换回
ExpandoObject
#2可能更容易一目了然,而且无需修改即可正确。”因此,这意味着在Remove方法中,您应该传递ExpandoObject类型的参数,但您没有传递,并且您正在传递dynamic类型的参数“我不确定这是否严格准确。
dynamic
的要点就是可以传递它,而不是传递任何东西,并在运行时解析它。请注意,此(OP)在.NET3.0中工作得非常好,因此我怀疑这只是一个在.NETCore中修复的框架错误。请参阅我对OP的评论,了解原始错误。
ICollection<T>.Remove(T)
ExpandoObject result = ...
Data.Remove((ExpandoObject) result)