天天看點

EF架構~CodeFirst模型下的資料初始化

在傳統的大型系統設計中,資料庫模組化是個比開發更早的環節,先有資料庫,然後是ORM模型,最後才是開發程式,而這種模型在EF出現後發生了轉變,而且有可能将來會被code first取代,因為你的關系型資料庫沒有必要定死,你在部署網站時,沒人願意先建立一大堆SQL語句,誰都願意在IIS上運作後,資料庫自動生成,無論是sqlserver,orcale,mysql它如果都是自動生成,那該多爽!事實上,這種開發模型已經愉愉的進入了我們的世界裡,尤其是在第三方伺服器部署時,這種code first讓你感覺更加方法,應該你不用在一個個建立資料表了,像香港雲這種第三方伺服器,普通使用者不支援SQL指令,建立表隻能一個一個的建立。

而當你的資料庫被建立後,資料表的資訊也可以同時被初始化的,這也是今天要說的,它分于兩叔,第一在config裡開啟這個初始化功能,第二建立自己的Initializer類,讓它實作DropCreateDatabaseIfModelChanges<YourContext>泛型方法即可,具體看一下代碼

一 配置啟用,将web.config裡的entityFramework改這樣

二 編寫初始化類代碼

感謝各位的閱讀,希望本文章可以幫到您!