学习ASP.NET Core Razor 编程系列目录

学习ASP.NET Core Razor 编程系列一 <http://www.cnblogs.com/chillsrc/p/8579777.html>

学习ASP.NET Core Razor 编程系列二——添加一个实体
<http://www.cnblogs.com/chillsrc/p/8622439.html>

 学习ASP.NET Core Razor 编程系列三——创建数据表及创建项目基本页面
<http://www.cnblogs.com/chillsrc/p/8651973.html>

学习ASP.NET Core Razor 编程系列四——Asp.Net Core Razor列表模板页面
<http://www.cnblogs.com/chillsrc/p/8717199.html>

学习ASP.NET Core Razor 编程系列五——Asp.Net Core Razor新建模板页面
<http://www.cnblogs.com/chillsrc/p/8778379.html>

学习ASP.NET Core Razor 编程系列六——数据库初始化
<http://www.cnblogs.com/chillsrc/p/8872303.html>

学习ASP.NET Core Razor 编程系列七——修改列表页面
<http://www.cnblogs.com/chillsrc/p/8968398.html>

学习ASP.NET Core Razor 编程系列八——并发处理
<http://www.cnblogs.com/chillsrc/p/8986512.html>

学习ASP.NET Core Razor 编程系列九——增加查询功能
<http://www.cnblogs.com/chillsrc/p/9025896.html>

 学习ASP.NET Core Razor 编程系列十——添加新字段
<https://www.cnblogs.com/chillsrc/p/9077466.html>

 

 

         在经过了上面篇文章的学习之后,本篇文章我们来学习如何使用 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. 虽然我们把字段添加 到数据库,但是这个字段,却是没有数据的。如下图。

 

 

那如何给字段同值呢?

* 如果你是开发,而且已经修改了初始化类SeedData类。那么可以参考(学习ASP.NET Core Razor 编程系列六——数据库初始化
<http://www.cnblogs.com/chillsrc/p/8872303.html>)给数据库初始化数据。
* 如果你把所有的记录从数据库中删除。你可以在浏览器中打开书籍列表页面,然后使用删除链接删除记录,也可以使用SQL Server对象资源管理器(SQL
Server Management Studio)使用SQL语句把数据从数据库中删除。
 

          现在我们在visual studio
2017中按F5运行应用程序,应用程序不会在如上一篇文章那样报错了。在应用程序运行起来之后,在浏览器中分别打开创建/编辑/列表页面,验证这些页面中是否已经有了publishing
字段的书籍信息。如下图。

列表页面:

 

创建页面:

 

编辑页面:

 

 

 

 

 

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信