zoukankan      html  css  js  c++  java
  • MVC自我学起之MVCMusic开发中遇到问题:musicstore edit方法出错的原因和解决方法

    错误提示:

    存储区更新、插入或删除语句影响到了意外的行数(0)。实体在加载后可能被修改或删除。刷新 ObjectStateManager 项。

    解决案:

    1.在view中或model中增加隐藏id 

    1.1 修改model

    [HiddenInput()]
    public int AlbumId { get; set; }

    1.2在视图中增加:(一般 若是用自动新建的curd中会自带)

    @Html.HiddenFor(model => model.AlbumId)

    2.得到id也有两种方法一种是修改model另一种根据id得到实体后修改edit方法; 如下所示:

    2.1修改model

    去掉[Bind(Exclude = "AlbumId")]

    2.2修改edit方法:

    [HttpPost]
    public ActionResult Edit(int albumid, FormCollection formData)
    {
    var album = db.Albums.Find(albumid);
    if (ModelState.IsValid)
    {
    UpdateModel<Album>(album, formData);
    db.SaveChanges();
    return RedirectToAction("Index");
    }
    ViewBag.GenreId = new SelectList(db.Genres, "GenreId", "Name", album.GenreId);
    ViewBag.ArtistId = new SelectList(db.Artist, "ArtistId", "Name", album.ArtistId);
    return View(album);
    }

    此解决方案出处:http://www.cnblogs.com/wusong/archive/2013/03/13/2958180.html

  • 相关阅读:
    Mac安装zookeeper
    征途
    vue-配置文件
    数组去重
    判断身份证
    判断邮箱
    判断手机号是否正确
    JS 时间格式转换
    打印 print-js
    自"愚"自乐的云服务器
  • 原文地址:https://www.cnblogs.com/Strive-fighting/p/3876748.html
Copyright © 2011-2022 走看看