十年河东,十年河西,莫欺少年穷
学无止境,精益求精
概述:此教程介绍了生成 Razor Pages Web 应用的基础知识。具体分为如下部分
- 创建 Razor 页面 Web 应用
- 向 Razor 页面应用添加模型
- 基架(生成)Razor 页面
- 使用数据库
- 更新 Razor 页面
- 添加搜索
- 添加新字段
- 添加验证
首先,我们启用VS新建一个项目:
本篇主要是学习使用NetCore的Razor视图,因此先从最基本的添加项目开始。添加项目完成后,我们发现系统自动生成了以下各项,如下图:
首先我们对项目各文件的执行顺序作个说明:
与早期版本的 ASP.NET 对比,最显著的变化之一就是配置应用程序的方式, Global.asax、FilterConfig.cs 和 RouteConfig.cs 统统消失了,取而代之的是 Program.cs 和 Startup.cs。Program.cs 作为 Web 应用程序的默认入口,不做任何修改的情况下,会调用同目录下 Startup.cs 中的 ConfigureServices 方法 和 Configure 方法,最后执行Request Handle Start(个人认为就是路由指向的文件) ,譬如:https://localhost:44392/Movies/Details?id=4 执行的是上图Pages文件夹中的Movies文件夹中的Details.cshtml文件,其路由机制和MVC类似。
其次,一起探讨下各个文件夹/文件的作用:
Pages文件夹
1、模板文件,
此文件设置页面顶部的导航菜单和页面底部的版权声明。
2、自定义的Razor页面
注意:自定义的Razor页面比模板页面会多出一个CS文件,这一点和.Net MVC中的CsHtml页面不一样,这个CS文件我们可以理解为页面的ViewModel,用于初始化页面及页面业务逻辑的相关操作,譬如:增删改查。
wwwroot 文件夹
ASP.NET Core 中的静态文件。
appSettings.json
ASP.NET Core 中的配置。
Program.cs
.NET 通用主机。
Startup.cs
ASP.NET Core 中的应用启动。
文件的简单介绍到此为止,下面我们来添加项目相关准备
1、新建一个数据库,命名为:MovieDB
2、创建一张表,命名为:Movie
脚本如下:
create table Movie ( ID int identity(1,1) primary key, Title nvarchar(200), ReleaseDate datetime, Genre varchar(200), Price decimal(18,2) )