博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MVC5-5 Razor引擎及视图结构
阅读量:7103 次
发布时间:2019-06-28

本文共 1147 字,大约阅读时间需要 3 分钟。

View结构

其实给我们提供了官方的MvcDemo,就是在我们直接去新建一个不为空的MVC项目。

 

这里就是一个MVC的Demo了,可以看一下这个Demo中View的结构是什么

上图可以发现,有一个Shared(共享)文件夹,先从这个文件夹看起,下图可以看到,里面分别有_Layout.cshtml,_LoginPartial.cshtml,Error.cshtml以有Lockout.cshtml。

  • _Layout.cshtml 这个视图相当与母版页,把网站共有的部分放在这个view中。其它的视图就不需要再去写重复的代码,比如顶部导航与底部信息
  • _loginPartial.cshtml  从名字可以看出来 登录分布页。在_layout中放有共有的部分,但是如果代码太多也会影响到阅读性,使用分布页面。可以使得代码更加简洁,分布页可以使用 Html.Partial去引用
  • Error.cshtml 这个就很简单了,是一个错误页面。其它view都将使用Error.cshtml做错误页面展示
  • Lockout.cshtml 这个没什么特别的,仅是一个视图而已。

 

在Views文件夹还可以发现有一个叫做_ViewStart的视图,通过名字就可以清楚的看到,这个视图先与其它的视图执行。

那么_viewstart有什么用呢? 下面有这个一个场景,我们的视图需要达到一定的条件才可以去使用母版页反之不用。就可以使用_ViewStart进行 统一设置 下图我简单写了一下,如果随机数是偶数,那么使用母版页。奇数则不用

 

 

Razor简单语法

在还没有Razor的时候,有很多其它的视图引擎。但是Razor出现的时候,其它的就慢慢的消失了。可见其强大。

Razor可以让我们在视图中去写C#代码。简单的截一张图,对下面的Razor语法进行分析

  • @using 引用程序集,这个应该没有什么疑惑了
  • @{} 包含块,可以在里面写一些逻辑代码,图中也可以看到进行了if判断
  • @xxxx 这里xxxx可以是一个变量。在开发中常用@ViewBag.xxx,这些写法是把这个变量值显示在这个位置。
  • @Html.xxx() 可以看到很多这个的代码,这种是进行调用我们后端类的方法并把返回值显示在这个位置。Html全名HtmlHelper,还有AjaxHelper。是微软为我们封装的一种常用的方法。比如下拉框、ajax提交等
  • 其实我们还会经常在视图页看到@model,我们可以在Controller中返回Model。也是一种数据传输的方法

本文就到这里,下一篇讲Razor中的帮助类、HtmlHelper、AjaxHelper

转载于:https://www.cnblogs.com/LiangSW/p/5862697.html

你可能感兴趣的文章
vi和vim的区别
查看>>
《剑指offer》-反转链表
查看>>
LuaStudio 9.27 去10分钟退出暗桩板
查看>>
虚拟PDF打印机
查看>>
【干货】2017年深度学习必读31篇论文(附论文下载地址)
查看>>
还在为画“类Word文档报表”而发愁吗?
查看>>
使用flashback query巧妙抽取指定数据
查看>>
JavaScript中错误正确处理方式,你用对了吗?
查看>>
ORACLE索引组织表讨论
查看>>
[20150527]bbed与数据块检查和2.txt
查看>>
打造平安城市,用心维护安全
查看>>
[20170421]impdp SKIP_CONSTRAINT_ERRORS
查看>>
PostgreSQL on ECS SLA 流复制备库+秒级快照+PITR+自动清理
查看>>
Swift游戏实战-跑酷熊猫 08 产生源源不断的移动平台
查看>>
Web---Cookie技术(显示用户上次登录的时间、显示用户最近浏览的若干个图片(按比例缩放))...
查看>>
【6】JAVA---地址App小软件(QueryPanel.class)(表现层)
查看>>
玩转spring boot——ajax跨域
查看>>
使用Python做科学计算初探(转)
查看>>
线程状态及属性
查看>>
[20171124]手工使用种子库建库.txt
查看>>