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();
War es hilfreich?

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
scroll top