您的位置:首页 > 编程语言 > ASP

ASP.NET Core Razor Pages 初探

2020-04-27 23:21 936 查看
最近新建 Asp.net Core MVC 项目的时候不小心选错了个模板,发现了一种新的项目模板。它使用cshtml视图模板,但是没有Controller文件夹。后来才发现这是ASP.NET Core框架新推出的Razor Pages技术。 ## 什么是Razor Pages “Razor Pages 使编码更加简单更加富有生产力”这是微软说的==!。Razor Pages 简化了传统的mvc模式,仅仅使用视图跟模型来完成网页的渲染跟业务逻辑的处理。模型里包含了数据跟方法,通过绑定技术跟视图建立联系,这就有点像服务端的绑定技术。下面使用一个标准的CRUD示例来演示Razor Pages的开发,并且简单的探索一下它是如何工作的。 ## 新建Razor Pages项目 在visual studio中新建Razor Pages项目。 ![](https://s1.ax1x.com/2020/04/26/J2bbD0.md.png) 项目结构 ![](https://s1.ax1x.com/2020/04/26/J2LJw6.png) 新建项目的目录结构比MVC项目简单。它没有Controllers目录,Pages有点像MVC项目的Views目录,里面存放了cshtml模板。随便点开一个cshtml文件,发现它都包含了一个cs文件。这是跟MVC项目最大的不同,这个结构让人回忆起那古老的WebForm技术,o(╥﹏╥)o 。 ![](https://s1.ax1x.com/2020/04/26/J2XnxJ.md.png) ## 新建Razor Page 我们模拟开发一个学生管理系统。一共包含4个页面:列表页面、新增页面、修改页面、删除页面。首先我们新建一个列表页面。 在Pages目录下面新建Student目录。在Student目录下新建4个Razor page名叫:List、Add、Update、Delete。 ![](https://s1.ax1x.com/2020/04/26/J2jsmR.md.png) 建好后目录结构是这样: ![](https://s1.ax1x.com/2020/04/26/J2xYGT.png) ## 模拟数据访问仓储 由于这是个演示项目,所以我们使用静态变量来简单模拟下数据持久。 在项目下新建一个Data目录,在目录下新建Student实体类: ``` public class Student { public int Id { get; set; } public string Name { get; set; } public string Class { get; set; } public int Age { get; set; } public string Sex { get; set; } } ``` 在Data目录下新建IStudentRepository跟StudentRepository类: ``` public interface IStudentRepository { List
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: