学习ASP.NET Core Blazor编程系列一——综述学习ASP.NET Core Blazor编程系列二——第一个Blazor应用程序(上)学习ASP.NET Core Blazor编程系列二——第一个Blazor应用程序(中)学习ASP.NET Core Blazor编程系列二——第一个Blazor应用程序(下)
学习ASP.NET Core Blazor编程系列二——第一个Blazor应用程序(完)学习ASP.NET Core Blazor编程系列三——实体在具体的实际项目中 , 数据实体类随着应用程序的功能的变化而变化:添加和删除新的实体或属性 , 并且需要相应地去修改数据库的表或架构 , 使其与应用程序中的实体保持同步 。EF Core中的迁移功能能够以递增方式更新数据库架构或表 , 使其与应用程序的数据实体类保持同步 , 同时保留数据库中的现有数据 。
简要地说 , 迁移的方式如下:
- 当项目中的数据实体类有了变改时 , 开发人员使用 EF Core 工具添加相应的迁移 , 以使数据库架构同项目中的数据实体类保持同步 。EF Core 将当前数据实体类与旧的数据实体类进行快照比对 , 以确定差异 , 并生成迁移源文件;迁移源文件可在项目的源代码管理中进行跟踪 , 如同其他任何源文件 。
- 生成新的迁移源文件后 , 可通过多种方式将其应用于数据库 。EF Core 在一个特殊的历史记录表中记录所有的迁移操作 , 使其知道哪些迁移已执行 , 哪些迁移尚未执行 。
一、创建脚本工具并执行初始迁移
在本篇文章中 , 我们来学习如何使用包管理控制台(PMC)来对数据库进行更新:
? 执行Add-Migration Initial生成代码文件 。
? 执行Update-Database命名 , 更新数据库 。
- 从菜单中选择“工具àNuGet包管理器器—>程序包管理器控制台”菜单 。
文章插图
文章插图
3. 以上错误信息 , 说明我们缺少相应的包 , 在本文中主要用到以下三个包:Microsoft.EntityFrameworkCore.SqlServer (适用于EF Core SQLServer 提供程序 , 这个包我们在前面的文章中已经安装了 。)Microsoft.EntityFrameworkCore.Design(适用于EF Core .NET CoreCLI 工具)Microsoft.EntityFrameworkCore.Tools(适用于 EF Core 的包管理器控制台工具)
4.使用VisualStudio NuGet 包管理器控制台安装 , 在PMC中 , 输入以下命令:
Install-Package Microsoft.EntityFrameworkCore.ToolsInstall-Package Microsoft.EntityFrameworkCore.Design
5.上面的命令执行完毕之后 , Nuget会自动安装我们所指定的包 , 如下图中红框所示 。然后我们在PMC中输入 Add-Migration Initial 。如下图 。
【学习ASP.NET Core Blazor编程系列四——迁移】
文章插图
6. 在上面的命令执行完毕之后 , 会在项目中增加Migrations目录和用于创建初始数据库的代码 , 如下图 。这些代码是基于DbContext指定的模型(在Models/ BookCntext.cs) 。初始参数用于命名迁移 。您可以修改成任何名称 , 但按惯例您可以选择描述迁移的名称 。
经验总结扩展阅读
- 火影忍者中佐助鸣人居住学习的村子叫什么?
- 五 Netty 学习:服务端启动核心流程源码说明
- 【前端必会】走进webpack生命周期,另类的学习方法
- opencvcv.line
- 如何让高三孩子主动学习
- 初学三阶魔方教程
- 三十六 Java开发学习----SpringBoot三种配置文件解析
- 4 MySQL学习---MySQL索引
- EFCore分表实现
- 关于学习和安静的格言