Структура сущности - это то, что вы ожидаете: < /p>
Код: Выделить всё
public class Parent
{
public string Id {get; set;}
public Child[] Children {get; set;}
}
public class Child
{
public Guid Id {get; set;}
public Grandchild[] Grandchildren {get; set;}
}
public class Grandchild
{
public Guid Id {get; set;}
public string Name {get; set;}
}
< /code>
Вот моя последняя попытка: < /p>
var filter = Builders
.Filter.Eq(x => x.Id, parentId);
var update = Builders.Update.Pull(
"Children.$[child].GrandChildren",
Builders.Filter.Eq(gc => gc.Id, Guid.Parse(grandChildId))
);
var arrayFilters = new List
{
new BsonDocumentArrayFilterDefinition(new BsonDocument("child._id", childId))
};
var updateOptions = new UpdateOptions { ArrayFilters = arrayFilters };
var result = await _parentCollection.UpdateOneAsync(filter, update, updateOptions);
return result.ModifiedCount == 1;
Подробнее здесь: https://stackoverflow.com/questions/797 ... in-c-sharp
Мобильная версия