如何使用EntityFramework Core映射現有視圖?

asp.net-core ef-code-first entity-framework-core

我知道如何從教程映射表

public DbSet<AccountEntity> Account { get; set; }
//..... OnModelCreating
modelBuilder.Entity<AccountEntity>().ToTable("Account");

假設在數據庫中有一個名為V_Account的視圖,我如何映射到該視圖並將其用作_context.V_Account

熱門答案

就我而言,它還不可能映射到視圖。請參閱GitHub上EF核心路線圖文檔中的“ 關鍵O / RM功能

關鍵的O / RM功能

在我們說EF Core是EF的推薦版本之前我們認為我們需要的東西。在我們實現這些功能之前,EF Core將是許多應用程序的有效選項,特別是在諸如UWP和.NET Core等平台上,其中EF6.x不起作用,但對於許多應用程序而言,缺少這些功能將使EF6.xa成為更好的選擇。

造型

  • 複雜/值類型是沒有主鍵的類型,用於表示實體類型的一組屬性。
  • 存儲過程映射允許EF使用存儲過程來持久更改數據庫(FromSql已經為使用存儲過程進行查詢提供了很好的支持)。
  • 視圖映射允許EF映射到數據庫視圖。

請參閱最後一點,這意味著它仍然在路線圖上。由於它尚未出現在EF Core 2.0的路線圖中,因此可以假設它不會在更高版本之後出現。

如果你需要這些功能,你應該回到使用EF 6.x(但是然後無法定位.NET Core,只有.NET Framework 4.x)



Related

許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow