EF6 Modified状态抛出异常

时间:2015-04-29 07:56:07

标签: entity-framework-6

我已经阅读了关于Stackoverflow和其他地方完全相同问题的大部分评论和反馈,但没有一个解决方案适合我。

我的情景。

我有一个编辑屏幕,用于填充ViewModal中的数据。

用户点击“更新”按钮后,我使用AutoMapper将ViewModel映射回实体,以便我可以更新数据。

$myquery=mysql_query("SELECT zaid,zatext, MAX(zatitle) as zatitle FROM announcements")

我的错误是,在这一点上,我没有实体框架实体引用,一个简单的POCO从ViewModel映射。

为什么EF会告诉我由于现有主键而无法附加/添加或修改实体?这不是更新,采用已经存在的实体,并保存更改吗?

在UoW中,编辑看起来像这样(注释掉我已经尝试过的东西):

[HttpPost]
public JsonResult Edit(Core.ViewModels.BuildingViewModel model)
{
    ViewBag.Title = "Building | Edit";

    try
    {
        var entity = model.ToEntity<BuildingViewModel, Core.Entities.Building>();
        Transactions.Broker.AskFor.Building.Update(entity);

        return Json(new { IsSuccess = true, Message = "Building successfully updated", Identity = entity.Id });
    }
    catch (System.Exception ex)
    {
        throw ex;
    }
}

我也没有看到关闭上下文跟踪的目的,这似乎可以解决问题。

我是否遗漏了EF中的某些内容,或者尝试做一些不支持的内容?

0 个答案:

没有答案