Las actualizaciones son lo mismo que crear un nuevo documento. Al actualizar documentos, todas las escrituras deben realizarse en una transacción.
Modificar un objeto
El siguiente ejemplo muestra cómo modificar un objeto existente. En este ejemplo, actualizamos el Name y Age propiedades de un objeto Dog:
var dog = realm.All<Dog>().First(); realm.WriteAsync(() => { dog.Name = "Wolfie"; dog.Age += 1; });
Inserciones adicionales
Una inserción te permite crear o modificar un documento sin saber si el documento ya existe. Para obtener más información, consulta Actualizar un objeto Realm.
Actualizar una colección
El siguiente código demuestra cómo actualizar una colección.
realm.Write(() => { // Create someone to take care of some dogs. var ali = new Person { Id = id, Name = "Ali" }; realm.Add(ali); // Find dogs younger than 2. var puppies = realm.All<Dog>().Where(dog => dog.Age < 2); // Loop through one by one to update. foreach (var puppy in puppies) { // Add Ali to the list of Owners for each puppy puppy.Owners.Add(ali); } });
Nota
Debido a que Realm utiliza relaciones inversas implícitas entre la propiedad del Perro Owners y la propiedad de la Dogs Persona, Realm actualiza automáticamente la lista de perros de Ali al mismo tiempo que actualizamos la Owners lista de cada perro.