Aggiornare documento RavenDB
-
25-09-2019 - |
Domanda
Sto usando asp.net MVC2.
Ho un modello definito come
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; }
}
Come aggiornare un documento reparto esistente attraverso il mio controller? la mia azione di modifica viene definito come
[HttpPost]
public ActionResult Edit(string id, Department department)
{
..
}
qui dice c'è un comando PATCH
per aggiornare un documento.
Ma non ho trovato questo in classe IDocumentSession
in Client API di Raven
Non voglio ottenere prima il documento e poi aggiornarlo come il modo in cui si è fatto in esempio MVCMusicStore di RavenDB
var albumModel = session.Load<Album>(id);
//Save Album
UpdateModel(albumModel, "Album");
session.SaveChanges();
Soluzione
È necessario utilizzare il codice come questo:
DocumentStore.DatabaseCommands.Batch(
new PatchCommandData{
Key = "users/15",
Patches = new [] {
Type = "Set",
Name = "Email",
Value = "Ayende"
}
}
);
questo thread sul gruppo di discussione per più informazioni
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow