Aktualisieren Sie ein Dokument in RavenDB
-
25-09-2019 - |
Frage
Ich verwende asp.net MVC2.
Ich habe ein Modell definiert als
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; }
}
Wie ein bestehende Abteilung Dokument durch meinen Controller aktualisieren? meine bearbeiten Aktion ist definiert als
[HttpPost]
public ActionResult Edit(string id, Department department)
{
..
}
Antwort angegeben hier sagt es ist ein PATCH
Befehl ein Dokument zu aktualisieren.
Aber ich dies nicht in Ravens-Client-API in IDocumentSession
Klasse fand
Ich mag nicht zuerst das Dokument bekommen und es dann wie die Art und Weise aktualisieren es in RavenDB des MVCMusicStore Beispiel erfolgt
var albumModel = session.Load<Album>(id);
//Save Album
UpdateModel(albumModel, "Album");
session.SaveChanges();
Lösung
Sie müssen Code verwenden, wie folgt aus:
DocumentStore.DatabaseCommands.Batch(
new PatchCommandData{
Key = "users/15",
Patches = new [] {
Type = "Set",
Name = "Email",
Value = "Ayende"
}
}
);
Siehe dieses Thema auf der Diskussionsgruppe für mehr Info
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow