EF 6 DB-First系列--Entity Framework中的DbSet

Entity Framework中的DbSet

DbSet类表示可用于创建、读取、更新和删除操作的实体集。

上下文类(派生自DbContext)必须包含映射到数据库表和视图的实体的DbSet类型属性。

在这里插入图片描述

DbSet类的重要方法如下表所示:

方法返回类型描述
Add新增实体类型将给定实体添加到具有Added状态的上下文中。保存更改时,将处于Added状态的实体插入到数据库中。保存更改后,对象状态变为Unchanged。Example:dbcontext.Students.Add(studentEntity)
AsNoTracking<Entity>DBQuery<Entity>返回一个新的查询,其中返回的实体不会缓存在DbContext中(继承自DbQuery)。作为AsNoTracking返回的实体将不会被DBContext跟踪。这将极大地提高只读实体的性能。 Example:var studentList = dbcontext.Students.AsNoTracking<Student>().ToList<Student>();
Attach(Entity)作为参数传递的实体将给定实体附加到处于Unchanged状态的上下文。Example:dbcontext.Students.Attach(studentEntity);
CreateEntity为该集合的类型创建一个实体的新实例。此实例not added或attached 到集合。如果底层上下文被配置为创建代理,并且实体类型满足创建代理的要求,则返回的实例将是一个代理。Example:var newStudentEntity = dbcontext.Students.Create();
Find(int)实体类型使用主键值查找由上下文跟踪的实体。如果实体不在上下文中,那么将执行查询,并根据数据源中的数据进行评估,如果在上下文中或数据源中没有找到实体,则返回null。注意,Find还返回已添加到上下文但尚未保存到数据库的实体。Example:Student studEntity = dbcontext.Students.Find(1);
IncludeDBQuery指定要包含在查询结果中的相关对象(继承自DbQuery)。Example:var studentList = dbcontext.Students.Include(“StudentAddress”).ToList<Student>();var studentList = dbcontext.Students.Include(s => s.StudentAddress).ToList<Student>();
Remove删除的实体将给定实体标记为Deleted。保存更改时,将从数据库中删除实体。在调用此方法之前,实体必须以某种其他状态存在于上下文中。Example:dbcontext.Students.Remove(studentEntity);
SqlQueryDBSqlQuery创建一个原始SQL查询,该查询将返回实体的集合。默认情况下,返回的实体由上下文跟踪;这可以通过调用该方法返回的DbSqlQuery的AsNoTracking来改变。Example:var studentEntity = dbcontext.Students.SqlQuery(“select * from student where studentid = 1”).FirstOrDefault<Student>();

有关DbSet的更多信息请访问MSND(https://msdn.microsoft.com/enus/library/system.data.entity.dbset(v=vs.113).aspx)。

参考

https://www.entityframeworktutorial.net/
https://msdn.microsoft.com/

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值