编辑/更新视图不​​会保存更改

时间:2014-02-12 14:47:54

标签: asp.net asp.net-mvc entity-framework crud

我有来自PersoonID&amp ;;的复合主键。友情表中的VriendID(Vriendschap),来自键的那些字段引用来自membershipTable(Persoon)的PersoonID,因此只有成员可以将成员作为朋友。 所以我们可以创建一个视图,说PersoonID 1是VriendID 2的朋友(谁也是我的成员) 我们可以删除它们,使用标准视图详细观察它们,但是在编辑它们时。 它什么都不做。

这是来自控制器的代码:

public ActionResult Edit(int id, int idTwo)
{

    Vriendschap vriendschap = vriendschapBLL.GetByTwoId(id, idTwo);
    if (vriendschap == null)
    {
        return HttpNotFound();
    }
    return View(vriendschap);
}

//
// POST: /Persoon/Edit/5

[HttpPost]
public ActionResult Edit(Vriendschap vriendschap)
{
    if (this.ModelState.IsValid)
    {
        vriendschapBLL.Update(vriendschap);
        return RedirectToAction("Index");
    }
    else
    {
        return View(vriendschap);
    }
}

这是编辑视图的代码:

<div class="editor-label">
    <%: Html.LabelFor(model => model.PersoonID) %>
</div>
<div class="editor-field">
        <%: Html.EditorFor(model => model.PersoonID) %>
    <%: Html.ValidationMessageFor(model => model.PersoonID) %>
</div>

        <div class="editor-label">
    <%: Html.LabelFor(model => model.VriendID) %>
</div>
<div class="editor-field">
        <%: Html.EditorFor(model => model.VriendID) %>
    <%: Html.ValidationMessageFor(model => model.VriendID) %>
</div>

这是我们DAO中的更新代码:

/**
 * Bewerken van een Vriendschap
 **/
public Vriendschap Update(Vriendschap model)
{
    db.Vriendschappen.Attach(model);
    db.Entry<Vriendschap>(model).State = EntityState.Modified;
    db.SaveChanges();
    return model;
}

很抱歉,我们的大多数字段和课程都以荷兰语命名 - 提前致谢!

0 个答案:

没有答案