Person と Group の 2 つのクラスがあります。
class Person {
public virtual ICollection<Group> GroupsWhereIAmMember { get; set; }
public virtual ICollection<Group> GroupsWhereIAmSender { get; set; }
}
class Group {
public virtual ICollection<Person> Members { get; set; }
public virtual ICollection<Person> Senders { get; set; }
}
人のインスタンス p が与えられた場合、p が送信者であるグループに属するすべての人を取得するにはどうすればよいですか?
オブジェクトへのリンクは次のようになります。
List<Person> results = new List<Person>();
foreach (Group group in p.GroupsWhereIAmSender)
{
results.AddRange(group.Members);
}
しかし、私はそれを「linq-to-entities」の方法で行いたいので、メモリが不足することはありません。