DeleteObject 方法不来
Posted
技术标签:
【中文标题】DeleteObject 方法不来【英文标题】:DeleteObject Method doesn't come 【发布时间】:2012-02-22 19:29:20 【问题描述】:这是我删除链接的代码。当我尝试 db.deleteobject.. deleteobject 方法没有显示在那里。我该怎么办。
[HttpPost]
public ActionResult LinkDelete(int id)
AralContainer db = new AralContainer("VefatilaniCS");
Link lnk = db.Links.Where(x => x.Id == id).SingleOrDefault();
db.Links.DeleteObject(lnk); // This is the line i got error
db.SaveChanges();
return View();
【问题讨论】:
什么是 AralContainer?您是否包含对 System.Data.Entity 的引用?我不建议您将代码与数据库和 Web 混合在一个地方。 AralContainer 是我的 DataContext,我在引用中添加了 system.data.entity。我不明白为什么它不来。这是完整的错误。 错误 2 'System.Data.Entity.DbSet' 不包含 'deleteobject' 的定义,并且没有扩展方法 'deleteobject' 接受类型的第一个参数'System.Data.Entity.DbSet' 可以找到(您是否缺少 using 指令或程序集引用?) C:\Users\Murat\Desktop\Aralreklam.Vefatilani - 复制 - 复制- 复制\Aralreklam.Vefatilani.UI.Web\Areas\Admin\Controllers\HomeController.cs 184 22 Aralreklam.Vefatilani.UI.Web 方法是Remove()
,但我猜你同时发现了。
【参考方案1】:
使用这个:
Link lnk = db.Links.SingleOrDefault(x => x.Id == id)
Where().Single() 实际上返回的是 DbSet,这不是你想要的 :)
【讨论】:
【参考方案2】:您可能忘记添加对某些程序集的引用。检查您的网络应用是否有以下引用:
System.Data.Entity (using System.Data.Entity)
using System.Linq
而且,顺便说一下 System.Data.Entity 没有任何 DeleteObject,只有 Remove()
【讨论】:
以上是关于DeleteObject 方法不来的主要内容,如果未能解决你的问题,请参考以下文章
为啥 deleteObject: 导致 CoreData 故障?
如何正确使用 LoadImage 和 DeleteObject?
核心数据:-deleteObject:崩溃,删除规则是原因吗?
deleteObject: 如何在 coreData 中工作?