最近、ASP.NET プロジェクト内で Entity Framework を使い始めたばかりです (これも最近使い始めたばかりなので、最近は少し圧倒されています)。
4 つのルックアップ テーブルを持つデータベースがあります。ADO.Net エンティティを自分の asp.net プロジェクトに追加したとき、最初はルックアップ テーブルがなくなった理由に戸惑いました。いくつか調べた後、私はこれに出くわしました:
そして、他の列を持たないルックアップテーブルではなく、外部キーが多対多の関係になることに気付きました。それはすべて順調です。ここで単純なものが欠けている可能性がありますが、おそらくそうであると思いますが、検索テーブルを走査して検索するのに最初は問題がなかったデータを照会する方法がわかりません。
これは私のデータベースの一般的なモデルです(EDMではありません)
人物: PID
グループ: GID
要件: RID
アクション: AID
個人/グループ: PID GID
グループ/要件: GID RID
要件/アクション: RID AID
人物/行動: PID AID
したがって、Person、Group、Requirement、および Action 間の多対多の関係により、ASP.Net Web フォーム プロジェクト コード内でステートメントを作成して、ルックアップ テーブルで使用していたように関係をトラバースする方法がわかりません。
以前は、PID = "目的の人物の ID" である Person/Group をクエリし、GID を使用して Group/Requirement からすべての RID を検索できました。次に、RID を使用して、要件/アクションからすべての AID を見つけます。次に、これらの AID を、AID が一致した Person/Action 内のすべての AID と比較して、要件が満たされているかどうかを確認します。
これがASP.NETの基本的なものであり、私が見落としていると言われても侮辱されることはありませんが、ここで質問して回答された場合、SQLクエリからエンティティに切り替える人には少なくとも簡潔な回答があると思いましたフレームワーク。