學習ASP.NET Core Razor 編程系列目錄html
學習ASP.NET Core Razor 編程系列二——添加一個實體編程
學習ASP.NET Core Razor 編程系列三——建立數據表及建立項目基本頁面瀏覽器
學習ASP.NET Core Razor 編程系列四——Asp.Net Core Razor列表模板頁面架構
學習ASP.NET Core Razor 編程系列五——Asp.Net Core Razor新建模板頁面併發
學習ASP.NET Core Razor 編程系列六——數據庫初始化框架
學習ASP.NET Core Razor 編程系列七——修改列表頁面工具
學習ASP.NET Core Razor 編程系列八——併發處理post
學習ASP.NET Core Razor 編程系列九——增長查詢功能學習
學習ASP.NET Core Razor 編程系列十——添加新字段
在通過了上面篇文章的學習以後,本篇文章咱們來學習如何使用 Entity Framework Code First 遷移功能將新字段添加到模型,而且同時將新字段添加到數據庫中。
使用 EF Code First 自動建立數據庫時,Code First 會向數據庫添加一個表,以幫助跟蹤數據庫的架構是否與生成它的實體類同步。 若是它們不一樣步,EF 就會引起異常。 這樣一來就更容易發現一致的數據庫表或者代碼問題。
咱們接下來使用Code First遷移功能更新數據庫。
1. 如今咱們來修改seeddata類,在類中增長一個Publishing字段,並提供數據。修改示例以下所示,你能夠對每一本書籍信息都參照修改。
context.Book.AddRange( new Book { Name = "Python編程 從入門到實踐", ReleaseDate = DateTime.Parse("2018-1-12"), Author = "埃裏克·馬瑟斯", Price = 75.99M, Publishing="機械出版社" },
2. 在Visual Studio 2017菜單中選擇生成->生成解決方案
3.在Visual Studio 2017的菜單中選擇「工具」菜單-->「NuGet 包管理器」>「包管理器控制檯」。 以下圖。
4. 在 PMC 中,輸入如下命令,如圖:
Add-Migration Publishing
Add-Migration 指令會通知框架執行如下操做:
1) 將 Book實體類與 數據庫中的Book表進行比較。
2) 建立代碼以將在數據庫中對錶Books表結構進行更新。以下圖。
3) Visual Studio 2017對於有新字段「Publishing」的遷移文件的命名是當前日期+字段名稱。這樣命名這樣有助於管理。以下圖。
5. 在執行完上面的指令以後,在 PMC 中,輸入如下命令,如圖:
Update-Database
7. 在執行完以上指令以後,在數據庫中添加了Publishing字段。以下圖。
8. 雖然咱們把字段添加 到數據庫,可是這個字段,倒是沒有數據的。以下圖。
那如何給字段同值呢?
如今咱們在visual studio 2017中按F5運行應用程序,應用程序不會在如上一篇文章那樣報錯了。在應用程序運行起來以後,在瀏覽器中分別打開建立/編輯/列表頁面,驗證這些頁面中是否已經有了publishing 字段的書籍信息。以下圖。
列表頁面:
建立頁面:
編輯頁面: