ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 11. Views 上
通常会使用外层模板的view,当做公共的模块
通常叫做_Layout.cshtml

views下新建Shared文件夹


主要关注RenderBody,这里会具体渲染Action返回的内容View

layout的title是在这里

ViewBage是个dynamic动态类型。既然是动态类型,我就可以在它身上写一些属性进行动态赋值

在Home/Index.cshtml内加了代码段,如果使用了Layout作为模板的话, 这里加的代码会先渲染。然后到了layout页面。@ViewBag他已经有值了 就会渲染出来
每个页面都可以引用layout,都可以设置title的值,这个值就是动态的

引入模板页。波浪线是指的整个web项目的根目录

运行页面只看到title的效果

在模板页面加点内容

刷新就看到模板页的内容

Section代码块
现在只有这一块区域是动态的,有时候还需要其他的区域也是动态的
添加一个底部的区域

把代码包在代码块里



_ViewStart.cshtml
在Razor引擎,选择具体的Action的View页面之前会先找VIewStat.cshtml这个文件,如果这个文件存在的话
那么首先就会执行这个文件内的代码,然后才会执行其他View里面的代码,这里适合放重复性的代码,每个View有的代码
比如Layout引入的这段代码

Views/_ViewStart.cshtml。名字必须是_ViewStart.cshtml。路径必须放在Views文件夹根目录下,这样才会对Views下的所有的页面起作用,
如果把它房子啊Home文件夹下,那么只会对Home文件夹下的View视图页面起作用


运行查看效果,明细页面也引用了layout

添加页面也引用了

_ViewImports.cshtml

也是在View根目录下

把TagHelper的引入放在这里了

在Home/Index.cshtml要使用这个Model。要么是命名空间全写上

要么是使用using引入这个命名空间

把引入的代码放在_VIewImport.cshtml页面内

这里就不用写了

这是因为在渲染其他的页面之前,也会先找_VIewImport.cshtml。这里面适合做引用,引用自定义的名称空间和TagHelper。
也是ViewStart一样有结构性的。放在VIews根目录就会所有页面起作用,
其他页面的引用都可以移到这里

运行页面,都可以正常运行

ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 11. Views 上的更多相关文章
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 03. 服务注册和管道
ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 03. 服务注册和管道 语雀: https://www.yuque.com/yuejiangliu/dotnet/ ...
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 25. 过滤器
在MVC的请求管道 并不是 asp.net core的请求管道.所以说Filter是专用于MVC的 贯穿特性,横穿关注点.比如授权.日志 这里的Authorize其实就是一个Filter,主要用来授 ...
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 02. Web Host 的默认配置
视频地址: https://www.bilibili.com/video/av38392956/?p=2 语雀 https://www.yuque.com/yuejiangliu/dotnet/ixt ...
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 12. Views 下
ASP.NET Core MVC 13. 安装前端库 Partial VIew 就是部分View,他没有自己的数据,数据来自图中白色的那块,它的数据需要传进去,第一个参数是View的名称,第二个参数就 ...
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 04. 中间件
注册startup类可以配置我们web应用的启动逻辑,使用的就是UseStartUp方法,asp.net core就会实例化这个类 并调用startup类里面的两个方法ConfigureService ...
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 13. 安装前端库
前端库使用npm进行安装,需要先建立webpack.json文件 因为我们没有使用npm安装任何库,所以npm的文件夹是空的 这里是用于开发时构建时引用的库写在这里 这里用到bootStrap 开发时 ...
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 27. CICD Azure DevOps
VSTS做持续集成 后来改名叫做Azure Deveps https://azure.microsoft.com/zh-cn/services/devops/ 这是中文的地址 创建一个项目 名称.描述 ...
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 01. 创建项目 +项目结构和配置简介
新建项目:Tutotial.Web 解决方案名称可以把web去掉 视频里面把git这个选项勾选了.我就不勾选了 dotnet CLI创建项目 首先必须安装好了.net Core的SDK dotnet ...
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 05.Controller 的路由
视频地址: https://www.bilibili.com/video/av38392956/?p=5 这里面就包含了MVC相关的库 可以通过打开右侧的Nuget库进行查看 这里修改下 ,只需要静态 ...
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 06. Controller 返回View
Controller父类会提供很多上下文的相关信息,还提供了很多封装的方法 返回的对象要求实现了IActionResult接口 继承父类,并引入命名空间 写this点就出现很多东西,这些就是上下文的信 ...
随机推荐
- python 怎么启动一个外部命令程序, 并且不阻塞当前进程
http://www.myexception.cn/perl-python/1278887.html http://blog.chinaunix.net/uid-25979788-id-3081912 ...
- Redhat7/centOs7 安装配置python3.6.5
centos默认安装python2,设置py2和py3并存的方法如下: sudo yum install openssl-devel -y sudo yum install zlib-devel -y ...
- SD卡读写之FileNotFoundException: /storage/emulated/0object.txt: open failed: ENOENT (No such file or dir
读写sd卡中的文件依照例如以下步骤:1调用Environment的getExternalStorageState()方法推断手机上是否插入了sd卡.而且应用程序具有读写SD卡的能力 //假设手机已经插 ...
- easyui datagrid client搜索、分页、排序
easyui datagrid的排序默认是server端排序.能够用sorter实现client排序[2].client分页可用filter实现[3].client搜索相同能够用filter实现. 不 ...
- js前端3des加密 后台java解密
import java.security.Key; import java.security.SecureRandom; import javax.crypto.Cipher; import java ...
- 关于CAShapeLayer
关于CAShapeLayer 内容大纲: CAShapeLayer简介 贝塞尔曲线与CAShapeLayer的关系 strokeStart和strokeEnd 动画 用CAShapeLayer实现进度 ...
- java接口的一些想法
最近一直在闷头往前看<thingking in java> ,但是却由于赶了进度而忘记了初衷.当学到集合的时候,回头却发现,我连最基本的接口都不明白.查了一上午资料,现在明白例如一点点,写 ...
- 远程连接mysql速度慢的解决方法:skip-name-resolve取消DNS的反向解析
PHP远程连接MYSQL速度慢,有时远程连接到MYSQL用时4-20秒不等,本地连接MYSQL正常,出现这种问题的主要原因是,默认安装的 MYSQL开启了DNS的反向解析,在MY.INI(WINDOW ...
- 【翻译自mos文章】即使resource_limit = false, password的 资源限制也会生效
即使resource_limit = false, password的 资源限制也会生效 參考原文: Resource limits for passwords work even with reso ...
- 成本函数计算方法J
J = 1/(2*m) * sum((X*theta - y).^2); OR