- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用 MVC3 更新对象
我有一个可以修改的模型,请参见下面的示例:
[HttpPost]
public ActionResult Edit(Company c)
{
if (ModelState.IsValid)
{
db.Entry(c).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
return View(c);
}
最佳答案
通常最好不要直接绑定(bind)到实体对象,而是创建一个编辑模型并绑定(bind)到它。
毕竟.. 什么可以阻止某人发回您不想用这种方法改变的值?
这里的主要问题是 mvc 模型绑定(bind)在上下文中更改模型中的属性,因此 Entity Framework 不知道哪些值已更改(因此应该更新哪些值)
您已经使用 db.Entry(c).State = EntityState.Modified;
稍微缓解了这种情况但这会告诉 Entity Framework 整个记录已更新。
我通常会执行以下操作:
[HttpPost]
public ActionResult Edit(Company c)
{
if (ModelState.IsValid)
{
Company dbCompayObjct = new Company { companyId = c.companyId };
db.Company.Attach(dbCompayObjct);
dbCompanyObjct.CompanyName = c.CompanyName;
dbCompanyObjct.City = c.City;
db.SaveChanges();
return RedirectToAction("Index");
}
return View(c);
}
关于asp.net-mvc-3 - 带有 EF 4.1 和 EntityState.Modified 的 MVC3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8393532/
我遇到了错误 'EntityState' is an ambiguous reference between 'System.Data.EntityState' and 'System.Data.En
Entity Framework 6中有多种添加/删除实体的方法,例如添加实体,我们可以使用:- b.Students.Add(student); db.SaveChanges(); 或 db.Ent
我最近在 visual studio 中做了一些更新,这个错误开始发生,我真的是 MVC 的新手,我不确定是什么导致了这个错误。 using System; using System.
我在使用 Entity Framework 时在 asp.net 中遇到此错误:“无法将类型 System.Data.EntityState 隐式转换为 System.Data.Entity.Enti
我想在客户列表的每一行上放置一个“删除”按钮和一个“取消”按钮。当客户为“未更改”时,“取消”按钮被禁用。但是,当客户转换到更改状态(“已添加”、“已修改”、“已删除”)时,我想启用“取消”按钮,以便
我一直在修改在 Entity Framework (来自现有 MSSQL 数据库)生成的模型中包含外键的选项。 假设我有一个 Person 和 Company 模型,我想同时创建这两个模型。公司可以有
我正在阅读以下有关 Entity Framework 6 的教程 Link .在名为“为教师添加编辑页面”的部分中,作者在 Post edit 操作方法中编写了以下代码:- [HttpPost, Ac
ASP.NET EF Core 中的 _context.Entry(entity).State = EntityState.Modified 和 _context.Entity.Update(enti
当我设置 db.Entry(episode).State = EntityState.Deleted EF 从我的列表中删除剧集并抛出 collection was modified 枚举操作可能无法
在 Entity Framework 中,当System.data.entity程序集未添加到项目中时,有时会发生这种情况。但是,为什么我之前在其他 MVC 项目中没有出现此错误。 它有时会发生,但很
为什么在这篇文章中: http://www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc/implementing-the-repos
public static Result SaveCutomer(Customer customer) { using (AshdorEntities context = new Ashdor
我是 MVC3 的新手,我试图在编辑内容两个外键(BRANCH_ID、ITEM_MASTER_ID)后执行更新功能。 当 branch_id 或 Item_master_id 未更改时,我面临的问题很
我正在关注 this在 Web API 项目中实现存储库模式的文章。在存储库中实现更新方法时,我遵循了提供的示例,使用: context.Entry(item).State = System.Data
与其说话,让我用代码说话: Dim Contact = Context.Contacts.Include("Phones") Dim phone = Contact.Phones(0) Contact
// Rollback changes switch (entry.State) { case EntityState.Added: entry.State = EntityS
请引用以下代码片段: using (var entities = new SchoolDBEntities()) { ////entities.Students
我有一个简单的雪花模式,我从中生成了我的 Entity Framework 模型。 问题是我试图将一个子实体映射到一个现有的父和/或祖 parent 实体,但它仍然插入它。 我关注了这个: Inser
我正在为我们的应用程序做一个简单的实体更改日志记录。出现的一个问题是,虽然 DbEntityEntry.State 属性的枚举值显然是互斥的 (See MSDN),但它是用 Flags 属性定义的,并
我有一个显示 Shipment 实体的 WPF View 。我有一个包含星号的文本 block ,它将提醒用户记录已更改但未保存。我最初希望将此(使用转换器)的可见性绑定(bind)到 Shipmen
我是一名优秀的程序员,十分优秀!