2016-06-11 3 views
0

"B"のICollectionを含むクラス "A"があります。 ステータスが「アクティブ」に等しいすべての「B」を含む「A」を選択します。私はこれをしようとしているが、それはBの非アクティブなレコードを返すだ、働いていない:属性がICollectionと等しいエンティティフレームワークLINQ

 return MyContext.A 
       .Where(t => t.B.Any(b => b.Status.Equals("active"))) 
       .Include(b => b.B); 

私はすでにこれを追加しようとした:

Where(b => b.B.Select(x => x.Status).Equals("active")) 

が、私は例外が「IEnumerableを型の要素を比較することはできません取得します"

答えて

1

Include与えられた述語と一致するナビゲーションプロパティ項目はありません。 Includeには常にコレクション全体が含まれます。

あなたは別のクラスまたは匿名の項目にデータを照会する必要があるだろう:

var results = context.A.Select(a => new { A = a, B = a.B.Where(b => b.Status == "Actuve") }); 
関連する問題