Как с помощью драйвера mongo C# сериализовать массив пользовательских объектов, чтобы сохранить его?

У меня есть документ продукта, содержащий массив документов. Например

{
 id: 1,
 name: "J-E-L-L-O",
 store:[{id: 1,
    name: "Store X"},
    {id: 2,
    name: "Store Y"}]
}

Я хотел бы изменить имя «Магазин Y» на «Магазин Z», например. В то время я не знал индекс объекта. Итак, я вытягиваю весь массив, нахожу объект для обновления, измените имя, а затем попытайтесь установить значение «хранить» с обновленным массивом.

productCollection.Update(query, Update.Set("store", storeList.ToBsonDocument()));

Однако я получаю сообщение об ошибке: «Значение массива не может быть записано на корневой уровень документ BSON."

Думаю, мне просто нужно знать, как сериализовать массив пользовательских объектов в массив BsonDocuments.

Заранее спасибо за помощь.

13
задан Sam DeHaan 3 April 2012 в 20:04
поделиться