質問

説明: 特定のドメインセグメントを異なるDbContextsに分離しようとしました。

それぞれいくつかのDbSetsを持ちますが、共有されているDbSetなどがあります。

この分離の理由は、モデルが生成される速度とシンプル性(オブジェクト内のセットが少なく、IntelliSenseに役立ちます)です。

しかし、私は生成されたモデルに正確に属するものについてはわかりません。

Q1:は、モデルに含まれるDBSetにDBSETが存在するエンティティと過渡的に接続されているすべてのエンティティです。

Q2:そうであれば、それはパフォーマンスごとにドメインを別のコンテキストに分離することを目的としていないことを意味します。 UserProfileに記載されていますか?

モデルの生成方法については、どこでもっと詳しく説明できますか?私はEntityFrameworkとCodefirstの本を読み、その特定の情報を見つけることができませんでした...

役に立ちましたか?

解決

あなたの最初の質問:はい、両側のエンティティを含むすべての関係がモデル化されているので、含まれているエンティティにナビゲーションプロパティで接続されているすべてのエンティティもモデルに含まれます。それのためのDbSetがあります。

エンティティフレームワークは、すべてのエンティティのDbSetsを作成することを強制しません。あなたが彼らの両親を通してのみアクセス可能になるように子エンティティを「制限」したいのであれば、これは便利です。

2番目の質問:他のコンテキストに属するエンティティのナビゲーションプロパティを介して、1つのコンテキストに属するすべてのエンティティが到達可能ではないが、パフォーマンスを分離する可能性があります。 は、コンテキスト内のより多くのDbSetsを含む明示的に関連する追加のコストであり得る。

エンティティフレームワークのソースコード、それはオープンソースで入手可能なで読むことができましたモデルの構築方法の詳細については、

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top