MongoDB内のエンティティのネストされた配列を直接的に更新する方法はありますか?私はMongoDB C# Driver
を使ってアプリケーションからDB呼び出しを行っています。以下はexmapleです:私はのように、各文書はそれ自体でいくつかの必要な人口のフィールドとCourse
とCourse
のネストされた配列は、分別収集されたStudent
コレクションを持っていると言う:MongoDB内のエンティティのネストされた配列のプロパティを更新します。
{
"_id": "234dssfcv456",
"Name": "Jean Douglas",
"Age": 32,
"Courses":
[
{
"_id": "1234",
"Name": "Computer Science",
"Level": "Basic"
},
{
"_id": "3456",
"Name": "Bio Science",
"Level": "Intermediate"
}
]
}
私は、ネストされたエンティティを更新することができます知っています以下のようなインデックスを使っていますが、私はインデックスを知らず、ネストされたものだけを知っていますCourse
オブジェクトId
のみ。今
db.College.Student.update(
{"Student._id": "234dssfcv456"},
{$set: {
"Student.$.Courses.1.Level": "Basic"
}}
は、コースの全体ネストされた配列を読んでいます - >アプリケーションの終了時に変更を行う - >その後、1で、既存の配列を置き換えるために起こっているfiledname "Courses"
と更新のために全体の配列を渡します合格。
しかし、Id
が利用可能な配列で1つのエンティティを更新できる方法があるかと考えていました。提案してください。
*** 関連質問セクションの右側には、すべてのショーは私の可能性はない対象項目のインデックスを使用してオブジェクトのネストされた配列を更新します。
実素敵な答えを。あなたの努力を感謝します。ありがとう :) – Rahul