IDでリンクされたDBML生成クラスがいくつかあります。
ClassA {
AID,
XID,
Name
}
ClassB {
AID,
ExtraInfo,
ExtraInfo2
}
のようなものを使用しdb.ClassAs.Where(XID == x)
てその結果を反復すると、各 ClassA と各 ClassB に対してクエリを実行することになりますが、これは低速です。
または、気にExecuteQuery
なるすべての情報をフェッチして ClassA を返そうとしました。それを繰り返すと、同じことをすることになります。つまり、多くの個々のフェッチを1回だけ行うことになります。両方のClassAの関心のあるフィールドを持つClassC(DBエンティティに関連付けられていない)に保存するとおよび ClassB の場合、このクエリははるかに高速ですが、面倒です b/c 不要な ClassC を IMO で作成しました。
ClassB に関連付けられている ClassA を引き続き使用ExecuteQuery
し、1 つのクエリと A*B の数のクエリを実行するにはどうすればよいですか?