いくつかのデータベースコンテキストを含むMyApp.DataAccessというプロジェクトがあります。これは1つのコンテキストとして始まり、3つに成長しました(私のアプリにはすべて個別のデータベースが必要です)。ご想像のとおり、それぞれにInitializerクラスがあり、現在はMigrationsを使用しようとしています。これにより、MyApp.DataAccessプロジェクトが実際に混乱することがわかります。
MyApp.Modelというプロジェクトもあります。このプロジェクトには、前述の各コンテキストでの使用ごとにフォルダーにまとめられたモデルクラスが含まれています。
複数のDbContextとModelクラスを整理するのに最適な方法に苦労しています。
私の本能は私にオプション1を教えてくれますが、ベストプラクティスは何ですか?
DbContext、移行、および関連するModelクラスを含むDbContextごとにMyApp.DataAccess。[ContextName]プロジェクトを作成します。最終的には、データベース以外のモデルクラスを表すためにMyApp.Modelプロジェクトが必要になります。
DbContextと移行のみを含むDbContextごとにMyApp.DataAccess。[ContextName]プロジェクトを作成します。すべてのモデルクラス(フォルダーとサブ名前空間で編成)に引き続きMyApp.Modelを使用します。
何もしない-複数のDbContext、複数の移行などを備えた単一のMyApp.DataAccess。フォルダごとに編成された複数のデータベースのモデルを含む単一のMyApp.Model。
ベストプラクティス/理想的なアプローチは何ですか?