0

SQL クエリを LINQ to entities クエリに変換する際に助けが必要です。したがって、私のプロジェクトでは Entity Framework を使用し、既存のデータベースに基づいて dbcontext を作成しました。サンプルの DB 構造は次のとおりです。

テーブル 'A' - ID、 - 名前、 - ID_C - 'C' と 'A' の間の関係。

テーブル 'B' - ID、 - 名前。

テーブル 'A_B' - 'A' と 'B' の間の多対多の関係 - ID_A、- ID_B。

テーブル 'C' - ID、 - 名前。

テーブル 'B_C' - 'B' と 'C' の間の多対多の関係 - ID_B、 - ID_C。

テーブル 'D' - ID、 - 名前 - ID_A - 'A' と 'E' の関係。

テーブル 'E' - ID、 - 名前 - ID_D - 'D' と 'E' の関係。

以下は、テーブル 'E' からデータを取得するために使用する SQL クエリです。

SELECT _E.* FROM E AS _E, D AS _D, A AS _A
inner join A_B AS _A_B ON _A_B.ID_B = 4 AND _A_B.ID_A = A.ID
left outer join B_C AS _B_C ON _B_C.ID_B = 4 AND A.ID_C = _B_C.ID_C
WHERE _E.ID_D = _D.ID AND _D.ID_A = _A.ID

上記のクエリが明確であることを願っています :) 残念ながら、エンティティに linq を使用している場合、同じ結果を得ることができません。私のデータ モデルが作成されたとき、EF はすべてのリレーションシップを EntityCollection オブジェクトに変換したため、比較を行うことができません: _A_B.ID_A = A.ID。A_B テーブルがないため:/私は EF を知らないことを知っていますおよびエンティティへの LINQ はうまく機能しており、これについては助けが必要です。誰かがこの SQL の代替を作成するのを手伝ってくれませんか?

4

0 に答える 0