質問: ADO.NET Entity Frameworkカスタムクラス、正しい選択? 私には今後の要件があり、EFが適切なアプローチであるかどうかは不明です。 基本的には、実装するWebサービスコントラクトを持っています。特定のクラス(DataServiceクラスのDataContentクラスを正しく直列化できるようにする)を返すメソッドがいくつかあります。クラスを構成するデータは、バックエンドデータベースに対するクエリの結果になります。 最下位レベルでは、データベースに格納されたprocsを書き込むことができます。この行は、カスタムクラスに手動でワイヤリングできるデータ行を返し、データレイヤークラスからストアドプロシージャをコールします(ストアドプロシージャをコールし、カスタムクラス)。 私はこのためにADO.NET Entity Frameworkを使用できるかどうか疑問に思っていますが、これはデータベーステーブルからEntityクラスを作成することを理解しています。私のカスタムクラスは、どのデータベーステーブルにも似ていません。格納されたprocsは、クラスを生成するために集約およびテーブル結合を実行します。 EFで可能なことから何かをここに見逃していますか?または、私はちょうど格納されたprocs /手動でデータ層のカスタムクラスを配線するより良いだろうか? WebサービスはSharePoint 2010でホストされるため、ASP.NET 3.5に限定されています。私はそこに良いアイデアがない限り、データレイヤにアクセスするためにパターンとプラクティスを使用すると思います。
回答: アプリケーションのオブジェクトモデルがデータベースのデータモデルと著しく異なる場合は、集計とテーブル結合のための従来のADO.Net +ストアドプロシージャを使用します。私の意見では、どんなORMでもこのような場合には利益より多くの問題が生じます。