私は現在、MVCアプリケーションの設計の冒頭にいます。MVCデータ設計の決定
いくつかのテストをプロトタイプで実行しているうちに、データの処理方法に問題が発生しました。
は、ここで簡単なDB diagram
だ私のプロトタイプで作業する場合、私は、Entity FrameworkはSQLから必要なすべてのモデルを構築するとき、それはJob_Position_Link_TableへEMPLOYEE_TABLEからいるICollection関係を作成することに気づきました。ビューが厳密にEmployee_Tableに型付けされている場合、Job_Position_Link_Tableの属性に直接アクセスすることはできません。また、Job_Position_Title_Tableにもアクセスできません。私はこの問題のViewModelを作成しましたが、ICollectionを使って作業しているときにViewModelを作成する方法に関するチュートリアルは見つかりませんでした。ほとんどのチュートリアルはコードの最初のアプローチから来ており、継承されたデータベースを扱っています。
私が考えていた解決策は、SQLですべてのビューを作成し、MVCに渡すことでした。
私はまだMVCを初めて使っていますが、このシナリオのベストプラクティスはどういうものかと思いましたか?
Entity FrameworkがICollectionを作成するViewModelを作成するのが最善でしょうか?現在、ICollection AtElement(int)から何かにアクセスしようとすると、常にnull参照例外がスローされます。 –
AWinter
結合コレクションについては、EF結合クエリを作成し、カスタムデータコントラクト(IEnumerable)を返します。 .Dataレイヤー内にEFエンティティを保持し、メソッドがカスタム作成エンティティを返すようにします(DTOを他のユーザーと呼んでデータコントラクトと呼ぶものもあります) –
ありがとうございます。私はこれが正しい軌道に乗ると思う。 – AWinter