EF4 STE和MVC2 - ChangeTracker没有POSTing

时间:2010-08-04 22:56:49

标签: c# asp.net-mvc-2 entity-framework-4 self-tracking-entities

我正在尝试使用Entity Framework自我跟踪实体设置MVC2应用。我的视图是STE T4模板生成的实体类型的强类型视图。这是我的GET:

    public ActionResult Edit(int id)
    {
        var ri = new App1Service.App1Client().GetMyObj(id);
        var changeTracking = ri.ChangeTracker.ChangeTrackingEnabled;  // this shows true
        return View(ri);
    }

到目前为止,这么好。然而,当这个表格POST时,ChangeTracker为空/重置为默认值,因此,STE似乎突然忘记它应该跟踪自己:

    [HttpPost]
    public ActionResult Edit(MyObj ri)  
    {
         // MyObj.ChangeTracker.ChangeTrackingEnabled now shows false
         // so the following line doesn't save anything:
         new App1Service.App1Client().SaveMyObj(ri);
         return RedirectToAction("Index");
    }

让强类型视图挂起(和POST后)整个STE的秘诀是什么?如果我必须去做另一次读取以获得原始值然后应用更改,这似乎会破坏自我跟踪实体的目的,不是吗?

0 个答案:

没有答案