2016-08-06 9 views
0

私は2つのエンティティEntityTestEntityRelatedを持っています。関連するエンティティをインクルードすることはできますが、削除済みのレコードは除外することはできますか?

両方のEntitiesでDeletedが真でない両方のEntitiesからクエリを取得し、結果を取得したいとします。

以下の文章を試してみます。 Deleted = trueのレコードを除外してEntityTestレコードを返しますが、EntityRelatedのレコードはフィルタリングされません。

db.EntityTest 
.Include(i => i.EntityRelated) 
.Where(x => x.Deleted != true && x.EntityRelated.Any(a => a.Deleted != true).ToList(); 

答えて

0

解決策1:拡張メソッドInclude2()Include2のこの実装を使用。次のように:

db.EntityTest 
    .Include(i => i.EntityRelated.Where(e=>e.Deleted == false)) 
    .Where(x => x.Deleted != true && x.EntityRelated.Any(a => a.Deleted != true) 
    .ToList(); 

解決策1: