1

ここに私の問題があります:私はTBH階層を持つコードファーストEF4モデルを持っています。したがって、基本クラス A から継承する 2 つのクラス (A1 と A2) にマップされたデータベースにテーブルがあります。クラス A1 は別のクラス (たとえば 1 対 1) にナビゲーション プロパティを定義します。私の問題は次のとおりです: B 関連のインスタンスを含めるにはどうすればよいですか?

私はこのようなことはできません:

Dim res = From a In dbContext.A.Include("B_rel_obj")
          Select a

B_rel_obj は A1 に対してのみ定義されており、A にも A2 にも定義されていないためです。

私の解決策は次のとおりです。

Dim res = From a In dbContext.A
Dim res1 = From a1 In res
           Where TypeOf(a1) Is A1
           Select a1

For Each a1 As A1 In res1
  dbContext.Entry(a1).Reference(Function(a) a.B_rel_obj).Load()
Next

それは機能しますが、結果を Load() にループするのは好きではありません。一度にすべてのコレクションをロードする方法はありませんか?

4

0 に答える 0