1

我正在尝试使用 Entity Framework Self-Tracking-Entities 设置 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);
    }

到目前为止,一切都很好。然而,当这个表单发布时,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");
    }

让强类型视图挂在(并回发)整个 STE 的秘诀是什么?如果我必须再次阅读以获取原始值然后应用更改,那似乎违背了自我跟踪实体的目的,不是吗?

4

0 回答 0