知识大全 ASP.NET MVC Razor视图引擎攻略
Posted 视图
篇首语:弓背霞明剑照霜,秋风走马出咸阳。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 ASP.NET MVC Razor视图引擎攻略相关的知识,希望对你有一定的参考价值。
ASP.NET MVC Razor视图引擎攻略 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
引子 看下面一段MVC 的代码 <%if (Model != null) %> <p><%=Model%></p> <%%> <%else %> //Do something <%%> 我们站在一个读者的立场上来看 <% %> 这种标记C#代码的方法是十分蛋疼的 如果写这段代码的人没有良好的缩进和对齐习惯的话 一段逻辑较为复杂的代码就会堆砌著杂乱无章的 <% 和 %> 匹配它们就是一件头疼的事情 会让读者望而生畏 即使是写代码的本人 闭合也是一件麻烦的事情 并且VS对 <% %> 的自动缩进和对齐支持不很友好 看惯了整齐的代码 面对自己写出的凌乱的东西会很不爽 随着MVC 的发布 新的Razor视图引擎解决了这个问题 Razor的意思的就是 剃刀 可见它灰常犀利 引言中的代码 我们用Razor的语法来写的话 @if (Model != null) <p>@Model</p> else //Do something Razor使用了 @ 来标记一段C#代码 并帮我们进行了内部的闭合 是不是感觉清爽多了? Razor在减少代码冗余 增强代码可读性和vs 智能感知方面 都有着很大的优势 下面我们来具体的介绍如何在ASP NET MVC 中使用Razor 引言End 一 创建基于Razor的Web程序 首先你的开发环境必须安装 NET Framework 然后在VS中新建项目时选择ASP NET MVC 应用程序 在选项页面中选择视图引擎为Razor 如图 :
图
然后创建项目 就会得到一个基于Razor的Web项目了 如图
图
二 使用Razor来进行页面布局 UI设计师们现在也讲究页面设计的语义化和结构化 把一个页面分成很多个模块 使用语义化的类名或id来标识这些模块 Razor推出了新的布局解决方案来迎合这一潮流 这里涉及到Razor的一些语法 大家可以不深究 @ 后面的内容 讲到页面布局 你只要专注与HTML代码就可以了 语法会在后面补充 指定母版与加载机制 首先我们来看_ViewStart ch页面 它的内容很简单 @ Layout = ~/Views/Shared/_Layout cs ; 这句代码指定了默认的母版的位置 当前应用程序根目录下< ~ 的含义>的Views/Shared/_Layout cs 除非特殊情况 比如视图是Partial视图 或显示的在视图中添加以下代码指示不使用母版 @ Layout = null; 其他情况下 该指定页就是视图的母版页 然后我们来看看Razor母版页_Layout cs的内容 View Code <!DOCTYPE > <> <head> <meta equiv= Content Type content= text/; charset=utf /> <title>@ViewBag Title</title> <link @Url Content( ~/Content/Site css ) rel= stylesheet type= text/css /> <script src= @Url Content( ~/Scripts/jquery min js ) type= text/javascript ></script> </head> <meta equiv= Content Type content= text/; charset=utf /> <body> <div class= page > <div id= header > <div id= title > <h >我的 MVC 应用程序</h > </div> <div id= logindisplay > 欢迎 <strong>@User Identity Name</strong>! </div> <div id= menucontainer > <ul id= menu > <li>@Html ActionLink( 主页 Index Home )</li> <li>@Html ActionLink( 关于 About Home )</li> </ul> </div> </div> <div id= main > @RenderBody()<! 一般视图内容的占位符 > </div> <div id= footer > </div> </div> </body> </> 注意@RenderBody()这个方法相当于一个占位符 假如我们的首页视图Index cs是这样 View Code @ ViewBag Title = 主页 ; <h >@ViewBag Message</h > <p> 若要了解有关 ASP NET MVC 的更多信息 请访问 <a ASP NET MVC 网站 >;/a> </p> 一般的视图处理 比如当服务器响应一个HomeController Index()请求的时候 需要返回Index视图 ? 首先会加载母版页_Layout cs的内容 ? 遇到@RenderBody()时 就用首页视图的内容置换到这里 最后处理完成返回静态页面 使用Partial视图 MVC 中 你需要使用<asp:Content></asp:Content>标签来进行页面分割 太多的话自己都忘记了哪个对应的是哪个部份 在Razor中 可以将需要剥离出来的部份作为一个单独的Partial视图 比如网站的头部(Logo 导航等等) 底部(友情链接 cha138/Article/program/net/201311/13192相关参考
ASP.NETMVC实现我们自己的视图引擎 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 
知识大全 ASP.NET MVC实现我们自己的视图引擎[2]
ASP.NETMVC实现我们自己的视图引擎[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
知识大全 ASP.NET MVC实现我们自己的视图引擎[1]
ASP.NETMVC实现我们自己的视图引擎[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
知识大全 ASP.NET MVC实现我们自己的视图引擎[3]
ASP.NETMVC实现我们自己的视图引擎[3] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!De
Asp.NetMvc3修改视图的默认路径 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
ASP.NET服务器控件视图浅析 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! ASPNET服务
ASP.NET服务器控件之视图状态 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 为Web页面及
ASP.NETWEB视图标题截字功能实现 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! <
ASP.NETMVC2.0之MVC框架简介 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Web
Web开发模式的颠覆者:ASP.NETMVC 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 年月