簡體   English   中英

DbContext onModelCreating 過濾數據

[英]DbContext onModelCreating filter data

我在我的 ASP.NET Core 2.0 應用程序的 DBContext 類中遵循代碼。 數據庫上下文

public DbSet<MyTable> MyTable1 { get; set; }
...
protected override void OnModelCreating(ModelBuilder modelBuilder) {
  modelBuilder.Entity<MyTable>().ToTable("MyTable");

.ToTable總是獲取表格的全部內容是否正確? 我只需要某些數據(過濾器)。 例如從表 Project 中獲取項目,其中員工 ID = 4。我擁有但成功登錄后的員工 ID。 我現在如何在我的控制器類中獲取數據?

ToTable 只是將對象映射到表。 在您使用 linq 語句請求數據之前,它什么都不做。 當您在 where 子句上調用 ToList 時,EF 將訪問數據庫並查詢僅返回所需結果。

所做的只是說 MyTable 映射到 sql 中的 MyTable。 而已。

如果您想永久過濾整個結果集,您可以使用 Eneity.HasQueryFilter(y => y.ID == 4);

暫無
暫無

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

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