質問
私はasp.net MVC2を使用しています。
私は
のように定義されたモデルを持っています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; }
}
私のコントローラを介して既存の部門のドキュメントを更新するには? 私の編集アクションは次のように定義された
[HttpPost]
public ActionResult Edit(string id, Department department)
{
..
}
ここhref="https://stackoverflow.com/questions/3117966/updating-documents-in-ravendb"> のドキュメントを更新するPATCH
コマンドがあります伝えます。
しかし、私はレイヴンのクライアントAPIでIDocumentSession
クラスでこれを見つけることができませんでした。
私は、最初の文書を入手し、それがRavenDBのMVCMusicStore例で行われている方法のようにそれを更新する必要はありません。
var albumModel = session.Load<Album>(id);
//Save Album
UpdateModel(albumModel, "Album");
session.SaveChanges();
解決
あなたはこのようなコードを使用する必要があります:
DocumentStore.DatabaseCommands.Batch(
new PatchCommandData{
Key = "users/15",
Patches = new [] {
Type = "Set",
Name = "Email",
Value = "Ayende"
}
}
);
より多くのためのディスカッショングループにこのスレッドを参照してください。情報
所属していません StackOverflow