2011-11-07 18 views
0

私はコードファーストでEF 4.0を使用していますが、ProductSpecificationAttributesナビゲーションプロパティを持つProductエンティティがあります。私は製品エンティティIList製品のリストを持っています。リスト内のすべての製品のデータベースに移動することなく、このリスト内のすべての製品がProductSpecificationAttributesをロードしたいと思います。私が持っているのであれば:私はこのような何かやりたいEF 4.0コードの最初のエンティティコレクションにナビゲーションプロパティを読み込むにはどうすればよいですか?

IList<Product> products = DbContext.ExecuteStoredProcedureList<Product>(
       "ProductLoadAllPaged", parameters here); 

IQueryable<Product> query = products.AsQueryable().Include(
x => x.ProductSpecificationAttributes); 

は、すべての製品のデータベースを照会することなく、EF 4.0コードファーストであることを行うための自動方法はありますそのProductSpecificationAttributesを取得しようとしていますか?

ご協力いただきますようお願い申し上げます。

おかげ

答えて

0

私は、ナビゲーションコレクションを含め、Idで製品を再クエリのようなだけで何かを見ることができます。

IQueryable<Product> query = context.Products 
    .Include(p => p.ProductSpecificationAttributes) 
    .Where(p => products.Select(p1 => p1.Id).Contains(p.Id)); 

products.Select(p1 => p1.Id)は、メモリ内のIDのコレクションで、クエリは、SQL IN句に変換。データベースの往復は1回だけです。

関連する問題