第二章 ASP.NET MVC (控制器向视图传递值(一))

一.可以通过使用ViewData对象和Viewbag对象从控制器传递值到和操作方法名称相同的名称的试图文件 ,两个的使用语法类似,具体语法请看下面举例

//使用ViewData对象从控制器传递文本数据到试图文件
ViewData["Message"] = "使用ViewData对象传递文本数据";

//在相应的试图文件通过以下语法调用从控制器传递过来的值
<h2>@ViewData["Message"]</h2>

//使用ViewBag对象从控制器传递文本数据到试图文件
ViewBag.Message2 = "使用ViewBag对象传递文本数据";

//在相应的试图文件通过以下语法调用从控制器传递过来的值
<h2>@ViewBag.Message2</h2>


"@"符号是Razor语法额关键词,当在试图文件中输入“@”时,Visual Studio会知道这段代码是在编写Razor语法。

二.ViewData对象和ViewBag对象只能将值传递给控制器中 与操作方法相同名称的试图文件,而想要将值传递给与控制器 操作方法不同名的试图文件中,就需要使用到 TempData对象,这个对象使用方式和ViewData对象一摸一样,只是传递的边界线有所不同

//使用TempData从控制器传递文本数据到试图
TempData["Message"] = "使用TempData对象传递文本数据";

//在试图文件通过以下语法调用从控制器传递过来的值
<h2>@TempData["Message"]</h2>

三.总结笔记

★★★(1.)ViewData对象是字典类型,存放的是键值对数据,存取时需要显示转换。

★ (2.)ViewBag对象是dynamic动态化的静态类型

★★★ (3.)ViewBag对象的属性和ViewData对象的键用的是栈中同一块存储空间,所以可以相互访问数据,两者的生命周期只在当前的操作方法中

★★★(4.)TempData对象数据保存在Session中,它虽然可以跨操作方法传值,但是它的生命周期只有一次,使用一次就会清空

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值