ASP.NET MVC(C#)で、Entity FrameworkのDBファーストを
利用しWEBシステムの開発を行っています。
【開発環境】
Visual Studio Community 2019
ASP.NET MVC 5.2
Entity Framework 6.2
SQLSERVER 2017
DBにいわゆるコードマスタ(汎用マスタ)を利用しており、
テーブルAとテーブルBとの間に複数のリレーションシップを設定しています。
(例)
テーブルA(日報トラン)レイアウト
id、日付、内容、金額、担当者、管理者
1、2020/6/22、作業A、1000、31、41
2、2020/6/23、作業B、2000、32、41
テーブルB(コードマスタ)レイアウト
id、コード名称、コード、内容
1、性別、1、男
2、性別、2、女
3、ユーザ、31、佐藤
4、ユーザ、32、高橋
5、ユーザ、41、安倍
上記の例の場合、テーブルAの「担当者」「管理者」に対して
テーブルBのユーザをリレーションシップとしてDBで設定しています。
Entity FrameworkのDBファーストでモデルを自動生成した際に、
リレーションシップの項目として、ナビゲーションプロパティが生成されますが、
生成される名前が、テーブル名に連番が付与された形になり、
View側で扱う際に区別が付かないものになってしまいます。
以下のようにナビゲーションプロパティが自動生成
テーブルB1
テーブルB2
テーブルB3
Entity Frameworkで関連テーブルの読み取りを行い
Viewで利用する際に以下の記述となる。
テーブルA.テーブルB1.内容
→担当者
テーブルA.テーブルB2.内容
→管理者
「テーブルB1」「テーブルB2」を明確に、「担当者」「管理者」として
記述する良い方法があれば、教えていただきたいと思います。
回答2件
あなたの回答
tips
プレビュー