MVC2.0升级到MVC3.0后的四个区别

本文介绍ASP.NET MVC中Razor视图引擎的基本用法,包括@符号的使用、强类型视图、数据传递方式(如ViewData与ViewBag)、母板页的配置以及部分视图的呈现方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. @ 符号在 View 页面中的用法:

C#代码以 @符号开头,例如

<h2>Name: @Model.Name</h2>

以及

@if (Model.Category =="Watersports") {

   <p>@Model.Category <b>Splash!</b> </p>

}

如果你的代码中不是以 html标记开头,也就是说你想在一段文本内部使用 C#代码的话,使用 @: 标记,例如

<span>Category: @Model.Category <b>Splash!</b>

你可以通过 @{ }把一大块代码组织起来,例如

@{

   if (Model.Category == "Watersports") {

       @:Category: @Model.Category <b>Splash!</b>

    }

   if (Model.Price > 10) {

       <h5>Pricey!</h5>

    }

}

假如你使用的是 html标记开头的话,可以写成这样

<span>Category: @Model.Category <b>Splash!</b></span>

建立强类型的 view页面之后,页头中使用 @model (必须为小写字母)指明对象的类型,例如 @model Razor.Models.Product

引用命名空间在页头中使用 @using例如 @using System.Data;

 2. Controller向 View 传值

以前的方法仍然可用,比如 return view(model),用于向强类型的页面传入对象,或者使用ViewData

MVC3又增加了 ViewBag ,这是一个动态类型,意思是说你可以不需要定义它的属性和数据类型,在使用的时候直接使用。

例如 ViewBag根本没有 aaa 这个属性,也不知道 aaa 到底是什么类型,你可以直接 ViewBag.aaa=123 这样用,

系统自动给 ViewBag增加一个 int 型的属性 aaa 并赋值123 ,在 View 页面中可以直接调用ViewBag.aaa 获取到 123 

3.母板页的使用 

在创建 view的时候,如果勾选了“使用母板页”的复选框,但并没有指定母板页的名字,

系统默认使用的是 _ViewStart.cshtml页面中通过 Layout 指定的母板页。

如果新创建的 View中不需要母板页,则必须有以下代码:

@{

         Layout= null;

} 

4.呈现部分视图时使用 @Html.Action、@Html.Partial和@Html.RenderPartial方法语法如下:

@Html.Action (“PartialViewName”)

@Html.Partial (“PartialViewName”)

@ {  Html.RenderPartial (“PartialViewName”);  }

文章来自:http://www.cnblogs.com/wenyang-rio/archive/2012/11/02/2750898.html

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值