Как обновить значение поля объекта массива?

Структура данных

Есть такая структура данных в бд:

введите сюда описание изображения

Поясняю структуру

  1. Есть коллекция Schools
  2. Она содержит в себе массив Students
  3. Каждый элемент массива Students хранит в себе поле-массив Lessons
  4. Уже массив Lessons хранит объекты, у которых есть поле Id

Задача

Иногда, у объектов, хранящихся в массиве Lessons, нужно обновить значение поля Content. То есть нужно обновить значение поля у объекта, но никак не объект целиком или массив Lessons, который хранит в себе эти объекты.

Код обновления должен выполняться на стороне сервера и быть на c#.

Вопрос

Как это можно реализовать?


Ответы (1 шт):

Автор решения: OXYGEN

значит это должно работать так

  1. клиент отсылает контент и его ID которое надо обновить на сервер
  2. сервер получив эти данные обновляет базу Update MainDb.Schools set Content ='new content' where id ='your id'
  3. у клиента информация может обновится а)сразу если реализован функционал когда сервер отсылает команду клиенту о том что данные изменились и их надо загрузить заново б)после перезапуска приложения , или после того как клиент обратится к серверу и запросит актуальные данные

  1. Вот посмотрите https://docs.mongodb.com/manual/tutorial/update-documents/
  2. Вот Пример на C# https://www.mongodb.com/blog/post/quick-start-csharp-and-mongodb--update-operation
→ Ссылка