第5章 使用Razor

 ******MVC框架最重要的好处:分离。

 知识点:

    1.声明视图模型对象的类型使用@model(小写m),而访问属性使用@Model(大写M)。

    2.Views文件夹中以下划线(_)开头的文件是对视图进行支持的文件,是不会被返回给用户的。(要进行渲染的视图和对视图进行支持的文件)

    3.MVC在渲染视图时,会自动查找一个叫做_ViewStart.cshtml的文件。用户可以使用这一特性为Layout属性自动的设置一个值。

    4.Layout=null 和没有Layout的区别:如果视图是自包含的,并且不想使用布局,此时使用Layout=null ;如果忽略Layout属性,MVC框架会在视图起始文件中找到Layout属性。

    5.Razor 会将值为null的视图包属性或模型属性渲染成空字符串。

 ---------------------------------------------------

asp.net 4.5 中Razor支持ASP.NET Web Pages。

 

一、使用模型对象

  1.在创建视图时,若不能识别模型类,请编辑项目(F6),然后再次尝试。

    视图的目的是将模型中一个或多个部分表现给用户。生成显示数据(来自于视图所接受的一个或多个对象)的HTML。

  Razor语句以@字符开始。

二、使用布局

  布局是一种模板,含有用以创建Web一致性的标记(确保在结果中包含适当的JS库,或整个应用程序所采用的通用观感)

   * Razor视图会被编译成C#类。所有的基类都定义了Layout属性。

    @{

       Layout=null;//在视图被渲染时进行执行。

    }

   布局是特殊形式的视图,对@RenderBody方法的调用会将动作方法所指定的视图内容插入到布局标记中去

  1.使用Layout属性指定一个布局文件,并用ViewBag.Title属性设置HTML页面的 title元素内容。

   @{

     ViewBag.Title="Product Name";

       Layout="~/View/_BasicLayout.cshtml";

    }

三、使用Razor表达式

  一个好的MVC框架应用程序中,动作方法与视图所起的作用是清晰分离的。

 动作方法与视图所起的作用

组件 要做的事 不做的事
动作方法 向视图传递一个视图模型 向视图传递格式化的数据
视图 使用视图模型对象向用户表现内容 修改视图模型对象的任何方面

  @Model或 ViewBag中的属性可以插入数据值、设置标签的属性值。

   @: 1233455 (未含在HTML元素中的文字插入到视图中)字符阻止Razor将此行解释为一条C#语句。

 

posted @ 2015-06-30 20:14  小居工作室  阅读(229)  评论(0编辑  收藏  举报