我有两个IEnumerable<dynamic>
从数据库表中检索到的数据,称为FullSet
和InScopeSubSet
。
第二个IEnumerable<dynamic>
是第一个集合的子集(两个集合都具有ChildID
其唯一 ID)
我想创建一个IEnumerable<dynamic>
仅包含 x 中未出现在 y 中的项目的新项目
我已经尝试了以下,但它不会编译。它说: “扩展方法不能动态调度。考虑强制转换动态参数或调用扩展方法而不使用扩展方法语法”
var sql = "SELECT ChildID, FirstName, Surname FROM Child ORDER BY ChildID ASC";
var FullSet = DB.Query(sql);
sql = "
SELECT UserScope.ChildID, Child.FirstName, Child.Surname
FROM UserScope
INNER JOIN Child ON UserScope.ChildID=Child.ChildID
WHERE UserAccountID = @0 ORDER BY ChildID ASC
";
var InScopeSubSet = DB.Query(sql, UserAccount.UserAccountID);
var OutScopeSubSet = FullSet .Except(InScopeSubSet );