0

Linq-to-SQL を使用してモデルを作成しています。ユーザーのお気に入りの映画をすべてリストする Movies テーブルがあります。

私の VM では、現在のユーザーにアクセスできます。linq エンティティを呼び出して、すべてのユーザーのお気に入りの映画を取得したいと考えています。VM のメソッドで直接 Movies テーブルへの実際の linq クエリを実行するのは悪い習慣ですか?

Public Class MyVM
    Public Sub GetMovies()
        'some linq query to get the movies based on the user's id
    End Sub
    ...more stuff...
End Class

または、モデルにそのメソッドを含めGetAll(ByVal id as Integer)、モデルまたはリポジトリからのみ関数を呼び出す必要がありますか?

私はパターンにかなり慣れていません。パターンがガイドのようなものであることは知っていますが、状況が発生したときにそれらの決定を下す前に、パターンに正しく従いたいと思います.

4

4 に答える 4

0

優れたアーキテクチャに従いたい場合は、モデルにもビューモデルにもデータベースからデータを入力するためのロジックを記述しないでください。

データをロードするには、DataServiceAgent を使用する必要があります。DataServiceAgent の詳細については、このリンクにアクセスしてください。

サービス エージェントは、データベースおよび Web サービスとやり取りするために、アプリケーションの最上位にもう 1 つのレイヤーを導入します。

于 2013-06-25T05:05:24.553 に答える