Мне нужно обновить код C# с помощью MongoDB. Здесь я должен был реализовать 2-й массив уровня обновления в ниже (subBranchindex берется в общем списке объектах): -Mongo DB C# код с использованием уровня 2 уровня, уровня 3 и 4 уровня
for (var index = 0; index < subBranchindex.Count; index++)
{
if (subBranchindex[index]._id == new ObjectId(subBranchid))
{
IMongoQuery queryEdit = Query.EQ("BranchOffice.SubBranchlist._id", new ObjectId(subBranchid));
UpdateBuilder update = Update.Set("BranchOffice.$.SubBranchlist."+ index +".Name",subBranch.SubName).
SafeModeResult s = dc.Collection.Update(queryEdit, update,
UpdateFlags.None, SafeMode.True);
}
}
массива Здесь второго уровня, я использую (для оператора цикла) для принятого значения индекса для массива. Далее я могу использовать 3-й, 4-й и 5-й уровни массива, которые будут назначаться больше, чем (для оператора цикла). Поэтому не нужно [for loop Statement], а также не нужно назначать хардкор-номер в индексе. For example: ("BranchOffice.$.SubBranchlist.0.Name",subBranch.SubName)
. Здесь Do not Hardcore number [index] 0 или 1 или 2. «2-й» уровень массива содержит более 100 записей.
Можно ли использовать значение индекса массива? Пожалуйста, объясните, как решить эту проблему. Пожалуйста, объясните мне пример.
Возможно, вы захотите попробовать вернуться к ответам, которые люди дают вам, или люди могут не потрудиться внести свой вклад в будущем. Похоже, вы все еще решаете связанные с этим проблемы: http://stackoverflow.com/questions/12720655/update-in-a-nested-array-using-c-sharp-driver-in-mongodb – cirrus