我想知道如何从Entity Framework 4.1中删除对象,而不必首先从数据库中加载对象。我在堆栈溢出中找到了these other 2个答案,但它们与EF 4.1不相关
我尝试了以下代码,但它不起作用
public void DeleteCar(int carId)
{
var car = new Car() { Id = carId };
_dbContext.Cars.Attach(car);
_dbContext.Cars.Remove(car);
_dbContext.SaveChanges();
}
我想避免下面的代码。
public void DeleteCar(int carId)
{
var car = context.Cars.Find(carId);
_dbContext.Cars.Remove(car);
_dbContext.SaveChanges();
}
而且我不想调用存储过程或执行原始sql。
最佳答案
我将以下内容用于删除,效果很好。
public virtual ActionResult Delete(int commentID)
{
var c = new Comment(){CommentID = commentID};
db.Entry(c).State= EntityState.Deleted;
db.SaveChanges();
return RedirectToAction(MVC.Blog.AdminComment.Index());
}