这是MVC时代系列之九------剖析Controller相关技术(四)

大家好,今天我们继续讨论Controller技术,今天和大家交流ViewData和TempData技术。


ViewData:

  ViewData执行响应结果时,可以在利用ControllerBase类的ViewData属性存储临时数据,

好让这些数据能在视图中显示出来。ViewData属性是一个ViewDataDictory类,

下面是一个它的源文件代码:



可用于存储任意对象的数据,但存储的键必须是字符串,ViewData有一个特性,

就是它只会存在于当前的HTTP请求中,而不像session一样可以将数据存储在下一个

HTTP请求中。



6.7.2   TempData


TempData和ViewData一样,属于字典类,属于tempDataDictory,如图:




但是TempData有一点不同的是,它内部是Session机制,它是暂存的意思,1次请求数据后即刻消失,我们

举例说明,当窗口数据被传送到以下Action中存储时,如果发生新建数据失败,但是为了保证新传送的数据

能够保留至下一个页面,此时,只希望出现一次的数据保存就在Tempdata中,



当新建数据发生异常失败时,将返回Create这个action,并将原来的数据从TempData中读出,实例:







6.8  模型绑定

ASP.NET MVC 采用模型绑定来解析由客户端传递过来的数据,而解析工作全部由DefaultModelBulider来完成,大多数情况下,

DefaultModelBulider可以完成工作,只有极少数不能完成。

6.8.1简单模型绑定:

当页面上有一个"uname"字段的input,而action参数也定义了一个名为"uname"的字符串参数,



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值