更新ASP.Net MVC 5中的单个字段

时间:2017-09-04 07:19:55

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

我想更新ASP.Net MVC 5中的单个字段我收到错误:

我的代码:

  MyJobs.PublishStatus = 1;
  db.MyJobContext.Attach(MyJobs);
  db.Entry(MyJobs).Property(x => x.PublishStatus).IsModified = true;
  //db.Configuration.ValidateOnSaveEnabled = false;
  db.SaveChanges();

我得到了以下错误:

  

存储更新,插入或删除语句会影响意外的行数(0)。       自实体加载后,实体可能已被修改或删除。       有关理解和帮助的信息,请参阅http://go.microsoft.com/fwlink/?LinkId=472540        处理乐观并发异常。

有关于此错误的帖子,但我无法弄清楚: Entity Framework: "Store update, insert, or delete statement affected an unexpected number of rows (0)."

并从:How to update only one field using Entity Framework?

更新asp.net MVC中的单个字段

1 个答案:

答案 0 :(得分:0)

我通过更新我的表单并添加隐藏的Id字段输入

来修复此问题
@using (Html.BeginForm())
{
     @Html.AntiForgeryToken()
     @Html.HiddenFor(model => model.Id)
     <div class="form-actions no-color">
        <input type="submit" value="Publish" class="btn btn-default" />
     </div>
}

希望这能帮助那些面临同样问题的人。