为了账号安全,请及时绑定邮箱和手机立即绑定

C# 存储库按类或 ID 删除

C# 存储库按类或 ID 删除

C#
摇曳的蔷薇 2021-07-09 03:06:55
这是一个常见的存储库删除功能。C# 如何知道要删除哪个项目?按整数 id、primaryid 键删除不是更好吗?通过整个班级,是否不需要更长的处理时间?谢谢,    public void Delete(T entity)    {        _dbContext.Set<T>().Remove(entity);        _dbContext.SaveChanges();    }    public void Delete(Foo entity)     {        context.Foos.Remove(entity);    }
查看完整描述

1 回答

?
青春有我

TA贡献1784条经验 获得超8个赞

C# 如何知道要删除哪个项目?

实体框架通过唯一标识符将其删除。

按整数id,主键删除不是更好吗?

是的,实际上实体框架也会通过其唯一 id 删除记录。但是我们必须提供一个完整的实体,然后实体框架才能匹配实体 ID。

通过整个班级,是不是需要更长的处理时间?

不是太多,几毫秒,但问题是一个操作有两个数据库查询,一个是检索记录,第二个是删除记录。

解决方案:

在实体框架 6.0 中,您可以删除记录而不检索它。 这是一个完整的解决方案。


查看完整回答
反对 回复 2021-07-10
  • 1 回答
  • 0 关注
  • 161 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信