私はEF UnitOfWorkPatternを使用しています。別のリポジトリで1つのリポジトリを使用するのは良い方法ですか?たとえば、私はリポジトリAを持っていますが、このリポジトリにはリポジトリBからデータを取得するロジックが必要です。Entity Framework UnitOfWorkパターン
答えて
いいえ、いいえと言います。リポジトリは通常、CRUD操作を抽象化します。それらは通常、1つの "エンティティ"または "テーブル"に固有です。
「リポジトリ間」となる機能が必要な場合は、おそらくリポジトリの一部ではないビジネスロジックを実装している可能性があります。
私の理解では、UnitOfWorkパターンでは、リポジトリには独自のコンテキストオブジェクトがなく、代わりに1つのコンテキストオブジェクトを使用してすべてを1つのトランザクションに保持します。ですから、別のリポジトリからリポジトリクラスにアクセスすることは問題にはなりません。 – Thangadurai
できます。コンテキストはすべてのリポジトリとuowで同じなので、うまく動作します。しかし、これはパターンがどのように設計されたかではありません。リポジトリはエンティティごとにCRUD操作を抽象化し、UOWはリポジトリを管理し、トランザクション・ビヘイビアを提供します。トランザクション・ビヘイビアは、「サービス」または「マネージャ」またはBLLコンポーネントと呼ばれるものから順番に使用されます。 –
合意。はい、リポジトリにはビジネスロジックを持たないでください(別のリポジトリまたはエンティティにアクセスする必要があります) – Thangadurai
- 1. Entity FrameworkのUnitOfWorkパターン(直接SQLクエリを使用)
- 2. UnitOfWorkのパターンとアトミック操作
- 3. UnitOfWorkパターンのASP.NET MVC 3カスタムメンバーシッププロバイダ
- 4. Identity 2.0とEntity Frameworkの工場パターン
- 5. UnitOfWorkパターンはpetaPoco ORMで使用しませんか?
- 6. Entity Frameworkのコードファーストソフト
- 7. Entity Framework + POCO
- 8. Entity Framework
- 9. Entity Frameworkのエラー:サーバー
- 10. リポジトリパターンのないEntity Frameworkのストアドプロシージャ
- 11. Entity FrameWorkのダイナミックリストFrameWork WebApi 2.0
- 12. 単純なリポジトリasp.net mvc with entity framework
- 13. Entity FrameworkのObjectQuery.Include()
- 14. Entity Frameworkの
- 15. Entity Frameworkコードファーストコレクションマッピング - FriendRequests
- 16. Entity Frameworkの
- 17. Entity Frameworkクエリヘルプ
- 18. Entity Framework 5.0ベンチマークテスト
- 19. Entity Frameworkのは
- 20. Entity Framework - コードファーストフルエントAPI:ErrorMessage?
- 21. Entity Frameworkの
- 22. Entity FrameworkのBulkInsert
- 23. Entity Framework 6メモリリーク
- 24. Entity Frameworkコードファースト&ストアドプロシージャ
- 25. Entity Framework UnintentionalCodeFirstException
- 26. Entity Framework Generic CRUD
- 27. Entity Framework、generic List
- 28. Entity Framework DeleteObject子
- 29. Entity Framework、rowguid、ModifiedDate
- 30. Entity Framework ASP.NET CRUD
これは、複数のリポジトリからデータを取得できるサービスレベルで実行する必要があります。 –