我想知道如何从Entity Framework 4.1中删除一个对象,而无需首先从数据库加载对象。我发现对堆栈溢出theseother 2的答案,但它们不属于EF 4.1实体框架4.1:如何删除对象Id
我曾尝试下面的代码,但它不工作
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。
第一个例子有效。你在其他地方做错了事。 –
Ladislav Mrnka,你能否提供一个示例项目来展示它如何为你工作。它不适合我。 – Paul
我同意@Ladislav:第一个代码段必须工作。你有例外吗?哪一个?还是它默默无法删除任何东西? Car类中有复合主键吗?数据库中是否存在不允许删除汽车的限制? – Slauma