リポジトリパターンの使用中にモデルクラスを再作成する必要がありますか
-
07-07-2019 - |
質問
WPF MV-VMアプリケーションにLinqtoSQLを使用しています。将来、LinqtoSqlからEntityフレームワークやSubsonicなどの別のものに変更する可能性があるため、リポジトリパターンが役立つことがわかりました
質問は、モデルクラスをどのように作成するかです。データベースにテーブルがある場合、LINQtoSQLで生成されたクラスをモデルクラスとして使用できないことを理解します。そうすれば、LinqtoSQLに依存します。これにより、リポジトリパターンを実装する際の独立性が失われます。つまり、すべてのエンティティクラスに対して独自のカスタムクラスが必要になりますか?
解決
グッドロード、いいえ。なぜあなたは自分自身にそれをするのですか?
ViewModelsですでに多くの複製を作成する必要がありますが、特にL2Sが通常のol 'clrタイプを使用できることを考慮して、複製のレイヤーをもう少し追加して追加するのはなぜですか?
WCFサービスからのサービス契約とORMタイプの両方をモデルとする を検討します。 * .Model名前空間に存在しないからといって、何かを意味するわけではありません。
この潤滑層が必要な場合は、その層をViewModelにしてください。それが彼らの目的です。
他のヒント
はい、すべてのエンティティクラスに対して独自のカスタムクラスを実装する必要があることを意味します。苦痛ですが、それが現状です。
を参照このSOの回答については、このテーマの詳細と可能な対策をご覧ください。
所属していません StackOverflow