MongoDbでのドキュメント参照は推奨されていますか、埋め込みドキュメントは正しい方法ですか?私の質問は次の文脈の中で来ます。MongoDbとC#:埋め込みまたは参照ドキュメント
class ObjectType1
{
ObjectId ID;
ObjectType2 Type2Element;
}
class ObjectType2
{
ObjectId ID;
}
は、私たちはファーストクラスでObjectType2要素を参照するためにMongoDBRefを使用することができます理解し、しかし、私は(間違った場所/名前空間で探していてもよく、公式のMongoDB C#のドライバを使用しています)FetchDBRefAs方法を見つけることができませんでした。
MongoDbで必要な場合、特にC#を使用してエンティティをリンクするには、どのような方法が推奨されますか? ありがとう
を*あなたがいることを読んでどこ私は知りませんが、それは古いソースでなければなりませんか非常にインフォームドコンセント。 'DBRef'を使わないでください。参照をしたい場合は、ローカルのキーと外部キーのために優先的に 'ObjectId'の値を使用し、代わりに「あなたのアプリケーションロジックの代わりに」を指すモデルを定義します。 'DBRef'は公式な非推奨通知なしで廃止予定のコンセプトに近いものです。現代の多くの業務ではサポートされておらず、照会の一般的な妨げになっています。 –
「埋め込み対参照」の選択は実際には意見に基づいており、唯一の実際の解決策は、実際のアプリケーションの使用パターンと要件に完全に基づいており、どのような形でも主題に関する人々の意見に左右されるべきではありません。なぜ「どちらか一方」を使用する理由をよりよく理解するには、[MongoDB relationships:embed or reference?](https://stackoverflow.com/q/5373198/2313887)または[Mongoose populate vs object nesting](https://stackoverflow.com/q/24096546/2313887)。後者は基本的に意図と基本的に関連しています –
ありがとう@NeilLunn –