MongoDB:タマネギアーキテクチャの使用、ドメイン/コアレイヤーはMongoDB DLLを参照する必要がありますか?

StackOverflow https://stackoverflow.com//questions/12711830

  •  13-12-2019
  •  | 
  •  

質問

MongoDBには、デフォルトの主キーとして使用する独自のObjectID型があります。Infrastructure LayerのPersistenceエンジンとしてMongoDBを使用して、ONIONアーキテクチャを使用して設計されたアプリケーションを設定しようとしています。Pocoクラスが私のドメイン層で定義されていますが、主キーにMongoDBのObjectID型を使用している場合、MongoDBをマイドメインレイヤに依存して追加するように強制しますか?

役に立ちましたか?

解決

最新のレイヤー以外のMongoDBへの参照を必要としないはずです。オニオンアーキテクチャでは、データの持続性はインフラストラクチャと見なされます。MongoDBがドメインモデルで定義されているリポジトリインタフェースを実装するリポジトリ実装の一部になるでしょう。

MongoDB文書には、それを一意に識別する_idフィールドがあります。こちらを参照してください

_id値は、一意である限り、アレイ以外の任意のタイプのものです。あなたの文書に不変の自然な主キーがある場合は、自動的に生成されたIDの代わりに_idで使用することをお勧めします。

あなたの持続性メカニズムをあなたに押し込みましょう!

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