Actualizar un documento en RavenDB
-
25-09-2019 - |
Pregunta
Estoy utilizando asp.net MVC2.
I tiene un modelo definido como
public class Department
{
[ScaffoldColumn(false)]
public object Id { get; set; }
[Required(ErrorMessage = "Department Name is required")]
[StringLength(25)]
[DisplayName("Department Name")]
public string Name { get; set; }
[DefaultValue(true)]
[DisplayName("Active?")]
public bool Active { get; set; }
}
Como actualizar un documento de departamento existente a través de mi controlador? mi acción de edición se define como
[HttpPost]
public ActionResult Edit(string id, Department department)
{
..
}
aquí dice hay un comando PATCH
para actualizar un documento.
Pero yo no he encontrado esto en clase IDocumentSession
en la API de cliente de Raven
No quiero que obtener primero el documento y luego actualizarlo al igual que la forma en que se lleva a cabo en el ejemplo de MVCMusicStore RavenDB
var albumModel = session.Load<Album>(id);
//Save Album
UpdateModel(albumModel, "Album");
session.SaveChanges();
Solución
Es necesario utilizar código como este:
DocumentStore.DatabaseCommands.Batch(
new PatchCommandData{
Key = "users/15",
Patches = new [] {
Type = "Set",
Name = "Email",
Value = "Ayende"
}
}
);
este hilo en el grupo de discusión para más info
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow