MongoDB には、デフォルトの主キーとして使用する独自の ObjectId タイプがあります。インフラストラクチャ層の永続化エンジンとして MongoDB を使用して、Onion Architecture を使用して設計されたアプリケーションをセットアップしようとしています。POCO クラスがドメイン層で定義されているが、主キーに MongoDB の ObjectID タイプを使用している場合、ドメイン層への依存関係として MongoDB を追加する必要がありますか?
質問する
603 次
1 に答える
2
最外層以外のどこにも MongoDB への参照は必要ありません。オニオン アーキテクチャでは、データの永続性はインフラストラクチャと見なされます。MongoDB を、ドメイン モデルで定義されたリポジトリ インターフェースを実装するリポジトリ実装の一部にします。
MongoDB ドキュメントには、_id
それを一意に識別するフィールドがあります。 ここを参照してください:
_id
値は、一意である限り、配列以外の任意の型にすることができます。ドキュメントに不変の自然な主キーがある場合_id
は、自動生成された ID の代わりにそれを使用することをお勧めします。
永続化メカニズムに押し付けられないようにしてください。
于 2012-10-06T15:06:48.560 に答える