学习Razor Pages笔记

学习内容:https://learnrazorpages.com


Razor页面都是以.cshtml结尾,其中内容页面必须具有以下三个特征:

1,文件名首位不能是下划线

2,文件扩展名为.cshtml

3,文件的第一行是 @page

内容页面可以指定一个布局文件,但不是必须的。页面可以包含代码块、HTML、Javascript 和 内联Razor代码。

Razor代码块被@{ }包裹,内部为标准C#代码。

PageModel,推荐使用页面模型,页面模型通过 @model  模型名称 引入页面中。


不同类型的Razor文件

上述内容页面是可浏览的,以下划线开头的文件为不可浏览的页面,以下划线开头的页面通常为局部页面,其中三个具有特殊功能。

_Layout.cshtml 所有内容页面的模板,网站页面相同的部分放在此文件中,一般包括header、footer、导航栏等。

_ViewStart.cshtml

_ViewImports.cshtml


局部视图

局部视图或页面不参与路由,因此可以使用任何不生成页面模型的模板创建局部视图。

局部视图可以以很多方式引入都主页面中,ASP.NET Core 2.1 版本以后推荐使用 局部标签助手:

<partial name = "_MenuPartical"/>

name属性是不带扩展名的局部视图文件名称,或其路径,此属性值区分大小写。

一般局部视图文件不用写路径,框架会以特定顺序自动搜索。

局部视图不能有@page指令,但可以使用@model XXX,模型可传递进入局部视图。


ViewImports 文件

_ViewImports.cshtml文件提供集中添加指令的机制,避免每个页面单独添加。支持如下指令:

@addTagHelper

@inherits

@namespace

@inject

@model

@removeTaghelper

@tagHelperPrefix

@using

其中@addTagHelper, @removeTagHelper 和 @tagHelperPrefix 指令与 Tag Helpers的管理相关。

@namespace 指定被ViewImport影响的页面的命名空间,每个文件只能有一个@namespace指令

@inject 指令与依赖注入相关

@model 指定模型

@using 添加其他命名空间

_viewImport.cshtml文件的数量没有限制,可以存在多个,其中@addTagHelper, @removeTagHelper,@inject, @using指令会累加,其他指令会覆盖。


ViewStart 文件

_ViewStart.cshtml文件在每个Razor页面执行前执行,它影响同级文件夹及下级文件夹中的所有Razor页面。

Razor Pages的更多相关文章

  1. [译]ASP.NET Core揭秘 - Razor Pages

    原文 什么是Razor Pages? Razor pages是ASP.NET Core 2.0的新特性,它被设计用来更快的开发页面,比传统的MVC模式更便捷. 创建项目 为了使用Razor Pages ...

  2. 学习 razor pages 指南

    这是一个系列,我打算把此人的系列翻译一下,学习技术的同时,顺便提高一下英文水平. 原文地址:https://www.learnrazorpages.com/ 前言 欢迎来学习 razor pages ...

  3. asp.net core 的 razor pages 如何使用ajax调用后台方法

    Razor 是一种允许您向网页中嵌入基于服务器的代码(Visual Basic 和 C#)的标记语法. 当网页被写入浏览器时,基于服务器的代码能够创建动态内容. 在网页加载时,服务器在向浏览器返回页面 ...

  4. Razor Pages with ASP.NET Core 2

    With ASP.NET Core 2 we get another way of building web applications. It’s one of those new things th ...

  5. ASP.NET Core Razor Pages

    Razor 页面是Asp.Net Core2.0新增的一个功能.Razor 页面是 ASP.NET Core MVC 的一个新特性,它可以使基于页面的编码方式更简单高效. 环境:vs2017 .net ...

  6. Introduction to Razor Pages in ASP.NET Core

    https://docs.microsoft.com/en-us/aspnet/core/mvc/razor-pages/ 从ASP.NET Core 2.0.0版本之后,添加了新的特性Razor p ...

  7. 【翻译】介绍 ASP.NET Core 中的 Razor Pages

    介绍 ASP.NET Core 中的 Razor Pages 原文地址:Introduction to Razor Pages in ASP.NET Core         译文地址:介绍 asp. ...

  8. ASP.NET CORE RAZOR :在 ASP.NET Core 中开始使用 Razor Pages

    来自:https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/razor-pages/razor-pages-start 系统必备安装以下组件:. ...

  9. 使用.net core基于Razor Pages开发网站一些工作笔记

    本文是在实践工作中遇到的一些问题记录,并给出是如何解决的,.net core已经升级到3.0版本了,其实在项目中很早就已经在使用.net core来开发后台接口了,正好有个网站项目,就使用了Razor ...

  10. 基于ASP.NET Core 3.0快速搭建Razor Pages Web应用

    前言 虽然说学习新的开发框架是一项巨大的投资,但是作为一个开发人员,不断学习新的技术并快速上手是我们应该掌握的技能,甚至是一个.NET Framework开发人员,学习.NET Core 新框架可以更 ...

随机推荐

  1. Docker:Centos7更新yum源下载docker

    前言: Docker 要求 CentOS 系统(6.5及以上)的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker . 通过 uname -r 命令查看你 ...

  2. hadoop学习(三)HDFS常用命令以及java操作HDFS

    一.HDFS的常用命令 1.查看根目录下的信息:./hadoop dfs -ls 2.查看根目录下的in目录中的内容:./hadoop dfs -ls in或者./hadoop dfs -ls ./i ...

  3. SpringMVC(3)URL请求到Action的映射规则

    在SpringMVC(2)经典的HelloWorld实现我们展示了一个简单的get请求,并返回了一个简单的helloworld页面.本篇我们来学习如何来配置一个action的url映射规则. 在Spr ...

  4. ExtJs4学习(三)组件查找 ComponentQuery类

    Extjs3.x: ID:这就是所熟知的Ext.getCmp("组件ID"),缺点是id重复导致出错. ref:在EXTJS3中,所有的组件都会有一个ref属性,也就是refere ...

  5. jenkins send files or publish

    1.创建一个自由风格项目 2.添加用户凭据 3.配置git 4.配置构建方式 这里选择 send files or execute command over SSH 5.配置远程发布脚本 6.构建 7 ...

  6. linux学习之路第四天

    用户和用户组的配置文件

  7. PHPCMSV9版本代码审计学习

    学习代码审计,自己简单记录一下.如有错误望师傅斧正. PHPCMS预备知识 PHPCMS是采用MVC设计模式开发,基于模块和操作的方式进行访问,采用单一入口模式进行项目部署和访问,无论访问任何一个模块 ...

  8. Django基础012--接口开发

    全局参数(get,post,put,delete) 接口:/api/parameter GET:获取全局参数的所有数据 POST:创建全局参数 PUT:更新全局参数 DELETE:删除全局参数 1.创 ...

  9. Qt5双缓冲机制与实例

    1. 双缓冲机制 所谓双缓冲机制,是指在绘制控件时,首先将要绘制的内容绘制在一个图片中,再将图片一次性地绘制到控件上. 在早期的Qt版本中,若直接在控件上进行绘制工作,则在控件重绘时会产生闪烁的现象, ...

  10. yoyogo v1.7.6 增强程序优雅退出和K8s Readiness检查

    YoyoGo (Go语言框架)一个简单.轻量.快速.基于依赖注入的微服务框架( web .grpc ),支持Nacos/Consoul/Etcd/Eureka/k8s /Apollo等 . 本次更新增 ...