熱心な読み込みで Single() の後に Include() を使用できないのはなぜですか。たとえば、次のスニペットでは、Include は使用できません。
db.Teachers.Single(p => p.Id == currUserId)
.Include(t => t.OfferedCourses)
.RegisteredCourses
.ToList();
ただし、Include() の直後に Single() がある場合は機能します。
db.Teachers.Include(t => t.OfferedCourses)
.Single(p => p.Id == currUserId)
.RegisteredCourses
.ToList();
このようにして、多くの不要な関連データが返されます。以下は私が最終的に得た方法です:
db.Teachers.Where(p => p.Id == currUserId)
.Include(t => t.OfferedCourses)
.First()
.RegisteredCourses
.ToList();
これが唯一の解決策ですか?