7

次の2つのリストがあります

 var query1 = from enrollments in db.Enrollments
             where enrollments.studentID == studentID && enrollments.result >= 50 && enrollments.enrolled == false
             select enrollments.subjectID;
 var query2 = from prerequisites in db.Prerequisites
              where prerequisites.subjectID == subjectID
              select prerequisites.prerequisiteID;

ここで、query2 のすべての数値が query1 に存在することを確認したいと思います。つまり、query2 が query1 の一部であることを確認したい

何か案は?

PS

subjectID-とprerequisiteIDは同じものだと確信できます

- query1 と query2 をそのようなリストに変換できますquery.ToList()

4

3 に答える 3

7

query2との間の集合の差query1が空の集合であることを確認するだけです。

var isSubset = !query2.Except(query1).Any();

LINQ メソッドEnumerable.Exceptとを参照してくださいEnumerable.Any

于 2013-05-28T10:10:23.823 に答える