[英]Should I use DbContext alone or DbSet when performing CRUD in ASP.NET Core using EF Core
To my knowledge you can perform CRUD using both DdbContext alone, or the DbSet itself (on top of DbContext).据我所知,您可以单独使用 DdbContext 或 DbSet 本身(在 DbContext 之上)执行 CRUD。 Is one way better than the other?一种方式比另一种更好吗?
Dbset:数据库集:
<DBCONTEXT>.<DBSET>.Add(Object);
<DBCONTEXT>.SaveChanges();
DbContext Only:仅 DbContext:
<DBCONTEXT>.Add(Object);
<DBCONTEXT>.SaveChanges();
DbSet:数据库集:
<DBCONTEXT>.<DBSET>.Find(Object.ID);
DbContext Only:仅 DbContext:
<DBCONTEXT>.Find(<Type>, Object.ID);
DbContext Only:仅 DbContext:
<DBCONTEXT>.Update(Object);
<DBCONTEXT>.SaveChanges();
DbSet:数据库集:
<DBCONTEXT>.<DBSET>.Remove(Object);
<DBCONTEXT>.SaveChanges();
DbContext Only:仅 DbContext:
<DBCONTEXT>.Remove(Object);
<DBCONTEXT>.SaveChanges();
I've found my anwser, it seems they do the exact same thing, for example, the dbset.Add() simply calls dbcontext.Add().我找到了我的 anwser,似乎他们做的事情完全相同,例如,dbset.Add() 只是调用 dbcontext.Add()。
public override EntityEntry<TEntity> Add(TEntity entity)
=> _context.Add(entity);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.