ASP.NET Core Razor页面学习
- 快速搭建一个管理数据库的简易应用
(1)在VS2019下,创建项目,选择ASP.NET Core应用程序
(2)在项目下,新建文件夹Models,用于存放实体类;并在文件夹下新建实体类Book,如图
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Threading.Tasks;
namespace RazorPagesMovie.Models
{
public class Book
{
public int id { get; set; }
public string bookName { get; set; }
public int price{ get; set; }
public string sort { get; set; }
}
}
(3)在“Pages”文件夹下,新建Books文件夹,用于存放使用实体框架生成的页面(CRUD,create、read、update、delete)
(4)右键此文件夹,选择“搭建基于基架的项目”——“使用实体框架生成Razor页面”
(5)点击添加,选择好之前创建的实体类,然后点击添加新的上下文(用于联系实体与数据库,名称任取)
点击添加,然后发现Books文件夹下多了一些页面;另外,项目下多了“Data”文件夹与其下面的上下文类BookContext.cs
(6)打开PMC(程序包管理器控制台,工具——nuget包管理器——程序包管理器控制台可打开,或在正下方的选项卡中),输入"add-migration -Context BookContext InitialCreate",既可新添迁移文件"(具体日期)InitialCreate.cs"。
迁移文件:对数据库架构规定的类;PMC命令:可以输入help获取帮助。在这里解释一下上文的命令:“add-migration -Context BookContext InitialCreate”其中add-migration是添加迁移文件的命令,而-Context BookContext是此命令的参数类型与参数值,指定某个上下文进行迁移文件的创建;而“InitialCreate”是迁移文件的名称,可以任取,不过一般会取带有意义的字符。
(7)PMC下输入"update-database -Context BookContext",使用上一步的迁移文件去创建数据库,默认为localdb
(8)VS的 视图——SQL Server对象资源管理器 可查看创建的数据库与数据表情况
(9)在布局文件"Pages/Shared"下的_Layout.cshtml,添加这条语句。不调试运行VS,点击首页的MyBooksManagement,可看到如下图,成功!
2. 使用EF Core为其他数据库生成迁移文件
关键在于,新建迁移文件前,我们在appSetting.json中设置好连接其他数据库的字符串。笔者这里连接的是SQL Server。连接字符串可以在VS中快速获得:通过“SQL Servel对象资源管理器”连接到想要的数据库,选择“高级”可以看到连接此数据库的连接字符串