EF使用Code First模式生成單數(shù)形式表名
使用Code-First模式生成數(shù)據(jù)庫時,默認生成的數(shù)據(jù)庫表的名稱為類型的復數(shù)形式,例如實體類名稱是"User",默認生成的數(shù)據(jù)庫表名為“Users”,多數(shù)情況下我們并不想生成的數(shù)據(jù)庫表名為復數(shù)形式,那么應該如何來控制呢?
當我們想要自定義一些數(shù)據(jù)庫表的生成規(guī)則的時候,會重寫OnModelCreating()方法,控制生成的表名的單復數(shù)形式同樣可以在這個方法中完成,實現(xiàn)代碼如下:
using System; using System.Collections.Generic; using System.Data.Entity; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data.Entity.ModelConfiguration.Conventions; using 控制生成單數(shù)表名.Model; namespace 控制生成單數(shù)表名.DatabaseContext { public class OperationContext :DbContext { /// <summary> /// 構造函數(shù):繼承父類,用來創(chuàng)建數(shù)據(jù)庫 /// </summary> public OperationContext() : base("OrderManagerSystem") { } public DbSet<LoginRecordInfo> LoginRecordInfo { get; set; } /// <summary> /// 重新OnModelCreating()方法,解決EF使用Code First模式生成數(shù)據(jù)庫表名變?yōu)閺蛿?shù)的問題 /// </summary> /// <param name="modelBuilder"></param> protected override void OnModelCreating(DbModelBuilder modelBuilder) { // 解決EF使用Code First模式生成數(shù)據(jù)庫表名變?yōu)閺蛿?shù)的問題 modelBuilder.Conventions.Remove<PluralizingTableNameConvention>(); } } }
在OperationContext類中實現(xiàn)重寫OnModelCreating()方法。OperationContext類繼承自數(shù)據(jù)庫上下文DbContext。重寫OnModelCreating()方法需要引入下面的命名空間:
- using System.Data.Entity.ModelConfiguration.Conventions;
到此這篇關于EF使用Code First模式生成單數(shù)形式表名的文章就介紹到這了。希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Visual?Studio2022創(chuàng)建WebAPI項目步驟記錄
不管是前后端分離還是提供數(shù)據(jù)服務,WebApi使用的越來越廣泛,而且.NET Core也是我們.NET開發(fā)人員未來發(fā)展的趨勢,所以說學會使用.NET Core Api是非常有必要的,這篇文章主要給大家介紹了關于Visual?Studio2022創(chuàng)建WebAPI項目步驟的相關資料,需要的朋友可以參考下2024-01-01asp.net實現(xiàn)DropDownList,TreeView,ListBox的無限極分類目錄樹
這篇文章主要介紹了asp.net實現(xiàn)DropDownList,TreeView,ListBox的無限極分類目錄樹,結合實例形式較為詳細的分析了asp.net常見控件實現(xiàn)無限極分類目錄樹的具體實現(xiàn)步驟與相關操作技巧,需要的朋友可以參考下2016-06-06Silverlight中同步調(diào)用WebClient的解決辦法,是同步!
如何建立web服務并引用的細節(jié),不是本文的介紹的目標,不再贅述。在silverlight調(diào)用服務器端服務的時候,默認情況下是進行異步調(diào)用的2011-04-04asp.net下xml當作導航數(shù)據(jù)源實現(xiàn)動態(tài)權限
如果有權限的話 可以通過節(jié)點的Roles屬性判斷當前登陸的賬號角色名是否符合然后判斷輸出這樣的話您就可以直接操作XML數(shù)據(jù) 而不用考慮別的。2009-12-12.NET開發(fā)實現(xiàn)一個微信跳一跳的輔助程序
最近比較火的小游戲就是微信跳一跳了,下面這篇文章主要給大家介紹了關于如何利用.NET開發(fā)實現(xiàn)一個微信跳一跳輔助程序的相關資料,利用此輔助可以輕松的實現(xiàn)高分,需要的朋友們下面隨著小編來一起學習學習吧。2018-01-01