簡體   English   中英

在使用 EF Core 在 ASP.NET Core 中執行 CRUD 時,我應該單獨使用 DbContext 還是使用 DbSet

[英]Should I use DbContext alone or DbSet when performing CRUD in ASP.NET Core using EF Core

據我所知,您可以單獨使用 DdbContext 或 DbSet 本身(在 DbContext 之上)執行 CRUD。 一種方式比另一種更好嗎?

創造:

數據庫集:

<DBCONTEXT>.<DBSET>.Add(Object);
<DBCONTEXT>.SaveChanges();

僅 DbContext:

<DBCONTEXT>.Add(Object);
<DBCONTEXT>.SaveChanges();

讀:

數據庫集:

<DBCONTEXT>.<DBSET>.Find(Object.ID);

僅 DbContext:

<DBCONTEXT>.Find(<Type>, Object.ID);

更新:

僅 DbContext:

<DBCONTEXT>.Update(Object);
<DBCONTEXT>.SaveChanges();

刪除:

數據庫集:

<DBCONTEXT>.<DBSET>.Remove(Object);
<DBCONTEXT>.SaveChanges();

僅 DbContext:

<DBCONTEXT>.Remove(Object);
<DBCONTEXT>.SaveChanges();

我找到了我的 anwser,似乎他們做的事情完全相同,例如,dbset.Add() 只是調用 dbcontext.Add()。

public override EntityEntry<TEntity> Add(TEntity entity)
            => _context.Add(entity);

Github 上的 DbSet 代碼

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM