1

私は4つのリレーショナルテーブルを持っています。

  1. カテゴリー
  2. 製品
  3. ProductBrand
  4. ProductImage

linqクエリに3つのテーブルをgroupbyで含める必要がありますProductBrand from CategoryId

私はこれを試します。

var PBrand = from b in db.ProductBrands
                       join p in db.Products on b.BrandId equals p.BrandId
                       join i in db.ProductImages on p.ProductId equals i.ProductId 
                       where b.CategoryId == 5
                       select b;

しかしProducts、とProductImagesはnullです。テーブルにテーブルを含めるProductsにはどうすればよいですか?ProductImagesBrand

4

2 に答える 2

1

インクルードを使用

from b in db.ProductBrands.Include("Products.ProductImages") 
where b.CategoryId == 5
select b;

または拡張メソッドInclude

于 2013-01-10T12:37:28.123 に答える
0

bを選択するだけでなく、次のように記述します。select b.col1、i.col1、b.coln、i.coln ....;

上記は、特定のクラスではなく、常に匿名型のオブジェクトを返します。

ありがとう

于 2013-01-10T12:31:49.300 に答える