Я хочу обновить коллекцию документов, которые динамически запрашиваются, например. без индекса. Вот (псевдо) образец, который работает:
void ChangeOwnerShip(string oldName, string newName) {
var collection = session.Query<GummyBears>()
.Where(p => p.OwnerName == oldName);
foreach (var doc in collection) {
doc.OwnerName == newName;
}
session.SaveChanges();
}
В приведенном выше примере я не учитываю ограничение на количество документов, которые вы можете и можете запросить у RavenDB ("безопасно по умолчанию"). Но проще говоря: это работает. Я не создал индекс для этого, и RavenDB отображает динамический индекс при использовании, который, похоже, работает нормально.
Но со всеми изящными функциями RavenDB я убежден, что это не самый идеальный способ сделать это.
Образцы, представленные для частичного обновления документов, пакетных операций, похоже, разработаны для этой цели. Однако все образцы, похоже, относятся только к одному документу, и я не могу найти достойного объяснения того, как заставить это работать с коллекцией объектов.
Кроме того, в HTTP API есть несколько достойных примеров операций с несколькими документами. . На самом деле в разделе Установить обновления представлен именно тот сценарий, которого я хочу достичь. Однако для этого сначала необходимо создать индекс.
Тем не менее, я не могу найти достойный пример того, как просто обновить динамическую коллекцию с помощью клиента .NET. Короче говоря, вопрос таков: что было бы лучше или более целесообразно при простом обновлении коллекции, чем мой пример выше?