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

MVC自我学起之MVCMusic开发中遇到问题:musicstore edit方法出错的原因和解决方法,布布扣,bubuko.com

时间: 2024-10-22 05:19:37

MVC自我学起之MVCMusic开发中遇到问题:musicstore edit方法出错的原因和解决方法的相关文章

ios 开发中 --做登陆注册时编译出现的错误和解决方法

这种问题,通常出现在添加第三方库文件或者多人开发时. 这种问题一般是找不到文件而导致的链接错误. 我们可以从如下几个方面着手排查. 1.以如下错误为例,如果是多人开发,你同步完成后发现出现如下的错误. 这个是使用CocoaPods下载的BmobSDK 实现注册时出现的错 解决方法:(图示) Undefined symbols for architecture armv7: "_OBJC_CLASS_$_MyPageLogViewController", referenced from:

IOS开发中 常常遇到的遇到的警告,错误汇总,解决方法

从sdk3.2.5升级到sdk 5.1中间废弃了很多的方法,还有一些逻辑关系更加严谨了. 1,警告:"xoxoxoxo"  is deprecated 解决办法:查看xoxoxoxo的这个方法的文档,替换掉这个方法即可. 2,警告:Declaration of "struct sockaddr" will not be visible outside of this function 解决办法:在你的开源.m文件中添加 #import <netinet/in.

Android开发中解析、创建Bitmap对象时OOM的有效解决方法并附上一些干货

先来点鸡汤: Stay hungry,stay foolish 这句话的的解读:我们必须了解自己的渺小.如果我们不学习,科技发展的速度会让我们五年后被清空.所以,我们必须用初学者谦虚的自觉,饥饿者渴望的求知态度,来拥抱未来的知识. 这几天做的项目中需要从图库选择图片或者拍照生成图片,然后展现在IamgeView控件上.当然,从图库选择图片和拍照选择图片的功能实现起来很简单.直接写上代码: CharSequence[] items = { "拍照", "图库" };

织梦系统中出现DedeTag Engine Create File False提示原因及解决方法

今天更新网站时dedecms系统时,遇到一个问题:DedeTag Engine Create File False  出现这样的提示. 其实这也不算是什么错误,我个人觉得最重要的一点就是根目录下没有给写权限.当然,我用的是Linux系统.我直接给了777权限之后就可以了. 之后在网上看到了一些答案,也贴在这里.希望对有需要的朋友有所帮助. 第一种情况:站点.文件夹权限不足造成无法建立文件 这种情况的出现,一方面可能是Apache设置的读写权限较严格,另一方面原因可能是使用者通过服务器或FTP对一

关于网站开发中div标签中设置宽度后其中文本溢出的原因和解决方法

一.问题产生的原因 当我们为div标签声明了宽度,但是仍然会出现文本越界的情况,不知道大家有没有发现,只有文本内容为单词或者纯数字 的时候才会出现这种情况为此我特意测试了两种情况,结果如下: ①当文本内容为纯数字或者字母: ②当文本内容为汉字: 所以我们可以得出结论:浏览器在解析我们页面的时候,给这一串数字当成一个词了,这样就不会自动切断字符串而进行换行. 二.解决方法 ①word-wrap:break-word (例如div宽200px,它的内容就会到200px自动换行) ②word-brea

php ci框架中载入css和js文件失败的原因及解决方法

在将html页面整合到ci框架里面的时候,载入css和js失败. 原因是ci框架是入口的框架 对框架中文件的全部请求都须要经过index.php处理完毕,当载入外部的css和js文件的时候要使 用base_url()函数处理外部的链接. 在控制器中须要先加载url相关的类 public function test() { $this->load->helper('url'); $this->load->view('admin/test'); } 在test.php的view视图中.

MATLAB GUI程序设计中ListBox空间在运行期间消失的原因及解决方法

在运行期间,ListBox控件突然消失,同时给出如下错误提示: Warning: single-selection listbox control requires that Value be an integer within String rangeControl will not be rendered until all of its parameter values are valid 此错误经常出现在清空List之后.原因在于,List的Value属性指示当前选中的列表项序号,如果超

在IE浏览器中执行OpenFlashChart的reload方法时无法刷新的解决方法

由于项目需求,需要在网页上利用图表展示相关数据的统计信息,采用了OpenFlashChart技术.OpenFlashChart是一款开源的以Flash和Javascript为技术基础的免费图表,用它能创建一些很有效果的报表分析图表.最重要的是它是开源和免费的,支持多种语言.首先在官网上下载开发包,里面包含了所需的flash文件.js文件以及多种语言的demo,这些demo写的非常详细,可以进行参考开发.由于项目使用.net来开发,所以我学习了一下开发包中对应的dotnet代码,这个.net项目采

Java开发,AWT控件的中文显示成乱码的解决方法

使用Java开发程序时,AWT控件上的中文在程序运行的时候显示成乱码,这是myeclipse的运行参数设置的问题. 解决方法: 第一:在你的具有main函数的类也即你应用运行的主类上点击右键,选择Run As中的Run Configurations,如下图: 第二,在Arguments标签下的VM arguments中添加下面这行参数代码,然后点击应用. -Dfile.encoding=GB18030 重新运行程序,就能够正常的显示中文了.Java开发,AWT控件的中文显示成乱码的解决方法