[解決済み】Entity Framework。1つのデータベース、複数のDbContexts。これは悪い考えなのか?[クローズド]。
2022-04-02 11:59:37
質問
これまでの私の印象では
DbContext
はデータベースを表すものなので、アプリケーションが1つのデータベースを使用する場合は、1つの
DbContext
.
しかし、一部の同僚は、機能領域を個別の
DbContext
クラスがあります。
これは、コードをよりきれいに保ちたいという、良いところから来たものだと思いますが、不安定な感じがします。しかし、残念ながら、私の直感は設計を決定するための十分な条件ではありません。
だから、探しているんです。
A)なぜダメなのかの具体例。
B) すべてうまくいくという保証。
解決するには?
1つのデータベースに対して複数のコンテキストを持つことができます。例えば、データベースに複数のデータベーススキーマが含まれていて、それぞれを独立した自己完結した領域として扱いたい場合に便利です。
問題は、最初にコードを使用してデータベースを作成する場合です。これは、アプリケーション内の単一のコンテキストでしかできません。このためのトリックは、通常、データベースの作成にのみ使用される、すべてのエンティティを含む追加のコンテキストです。実際のアプリケーションでは、エンティティのサブセットだけを含むコンテキストは、データベースのイニシャライザを NULL に設定する必要があります。
例えば、共有エンティティタイプや、あるコンテキストから別のコンテキストへの受け渡しなど、複数のコンテキストタイプを使用する際に見られる問題は他にもあります。一般に、複数のコンテキストを使用することは可能であり、設計をよりすっきりさせ、異なる機能領域を分離することができますが、複雑さが増すという代償があります。
関連
-
[解決済み】Entity FrameworkからのSqlException - セッション内で他のスレッドが動作しているため、新しいトランザクションは許可されません。
-
[解決済み] 不変量名 'System.Data.SqlClient' を持つ ADO.NET プロバイダに対応する Entity Framework プロバイダが見つかりませんでした。
-
[解決済み] Entity FrameworkとLINQ to SQLの比較
-
[解決済み] Entity Frameworkにおける最速の挿入方法
-
[解決済み] Entity Frameworkで生成されたSQLを表示するにはどうすればよいですか?
-
[解決済み] Entity Framework - 複数レベルのプロパティを含める
-
[解決済み] Entity Frameworkで複数行を削除する方法(foreachを使用しない)
-
[解決済み】Entity Framework 4.1 Code Firstでクラスプロパティを無視する
-
[解決済み】Entity Frameworkで複数のカラムにユニークキー制約を設定する
-
[解決済み] Entity Framework 5で子オブジェクトの子オブジェクトをインクルードする方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] コードファーストとモデル・データベースファーストの比較【終了しました
-
[解決済み] Entity Framework: "ストアの更新、挿入、または削除ステートメントが予期しない行数 (0) に影響しました。" [クローズド]。
-
[解決済み】1つ以上の外部キーのプロパティが非NULLであるため、リレーションシップを変更できませんでした。
-
[解決済み] Entity Framework Code Firstでオブジェクトをデタッチするにはどうすればいいですか?
-
[解決済み] EF 5 Code First Migrationsから完全なSQLスクリプトを生成する
-
[解決済み] Entity Framework 4 / POCO - 何から始めるか?[クローズド]
-
[解決済み] Entity Frameworkのバージョンは?
-
[解決済み] Entity FrameworkとSQL Server View
-
[解決済み] 特定のVSプロジェクトでのみパッケージマネージャーコンソールのマイグレーションを有効にするCommandNotFoundExceptionを発生させる
-
[解決済み] Entity Framework Code First - Fluent ApiとData Annotationsのメリット・デメリット【終了しました