このLambdaクエリの何が問題になっていますか?特定のタイプのProjectDocsのみを含めることができるようにしたいのですが、ProjectDocsには多くのタイプが存在する可能性があります
ICollection<Project> projects = db.Projects
.Include(i => i.ProjectDoc.OfType<Cover>().Where(s => s.Status == "Active"))
.Include(i => i.ProjectDoc.OfType<Summary>().Where(s => s.Status == "Active"))
.Include(i => i.User)
.Include(i => i.ProjectTag.Select(t => t.Tag)).ToList();
派生クラスCover、Segment、Summaryを持つモデルProjectDocがあります。ProjectDocを含めて、後で条件で識別子列を使用する必要がありますか?いくつかのタイプは多数の結果をもたらす可能性があり、他のタイプはほんのわずかです。
私が得るエラー...
The Include path expression must refer to a navigation property defined
on the type. Use dotted paths for reference navigation properties and the
Select operator for collection navigation properties.
Parameter name: path
「プロジェクト」のナビゲーションプロパティはProjectDocです。派生クラスのナビゲーションプロパティはありません。私がそれを試したとき、私はたくさんの余分な鍵を手に入れました。