我有一个小问题。我有2个IQueryable(A和B)。我想找到补数。为此我使用Except:A.Except(B)
这将给我A中所有不在B中的数字。
这很有效。我的问题是我想这样做A = A.Except(B)
但这让我有一个错误:
A cycle was detected in a LINQ expression exception
任何人都有关于如何解决这个问题的建议。 我不能只创建一个新的IQueryable C来保存A.Except(B)结果。因为我在以后的代码中需要A。
答案 0 :(得分:4)
只需创建一个用于存储结果的中间列表。
var C = A.Except(B).ToArray();
C
会保留您想要的结果,而A
和B
将保持不变。