我想删除这样的数据库条目:
public bool DeletePersonById(int id)
{
var p = new Person() { ID = id };
//ctx.Person.Attach(p);
ctx.Entry<Person>(p).State = EntityState.Deleted;
return true;
}
然后我收到一个带有以下消息的InvalidOperationException:
关键字段“FirstName”的值不能为null。 “Person”类型上定义的关键字段需要非空值。
所以,对我而言,在这种情况下属性是否可以为null并不重要,因为我只想删除完整的行/对象。
对象已加载AsNoTracking()
(from p in ctx.Person.AsNoTracking() where p.ID == id select p).FirstOrDefault();
答案 0 :(得分:0)
好吧,我的表没有主键,在这个db表上添加pk并重新生成ef模型之后,上面的代码就可以了。