C# 比较两个IQueryable实例

C# 比较两个IQueryable实例,c#,linq,C#,Linq,我有两个IQueryable实例-objiqueryablea和objIQueryableB,我只想获取objiqueryablea中存在的元素,而不是objIQueryableB中的元素 一种方法是使用foreach循环,但我想知道是否有更好的方法。简单明了 var result = objIQuerableA.Except(objIQuerableB); 标题实际上是说比较两个iQueryTables。如果您希望实际执行比较以确定两个IQueryable是否在单个查询中包含相同的结果 va

我有两个
IQueryable
实例-
objiqueryablea
objIQueryableB
,我只想获取
objiqueryablea
中存在的元素,而不是
objIQueryableB
中的元素


一种方法是使用foreach循环,但我想知道是否有更好的方法。

简单明了

var result = objIQuerableA.Except(objIQuerableB);

标题实际上是说比较两个iQueryTables。如果您希望实际执行比较以确定两个IQueryable是否在单个查询中包含相同的结果

var aExceptB = objIQuerableA.Except(objIQuerableB);
var bExceptA = objIQuerableB.Except(objIQuerableA);
var symmetricDiff = aExceptB.Union(bExceptA);
bool areDifferent = symmetricDiff.Any();