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)