MVC:控制器与视图之间的值传递

本文介绍了在ASP.NET MVC中,如何在控制器与视图之间传递值。与传统的ASP.NET WebForm不同,MVC不使用ViewState。文章详细讲解了ViewData、TempData和Model三种传递方式的使用场景和方法。ViewData适用于单一页面,TempData可跨页面传递,而Model则提供了强类型的便利。此外,还提及了如何通过定义新模型来传递多个数据模型。
摘要由CSDN通过智能技术生成

前言

  在传统asp.net webform程序中,进行值传递的对象有:ViewState,Cookie,Application,Session等等。其中使用得最为频繁的,肯定是ViewState,只有回传信息都会有ViewState。而在asp.net MVC中是没有ViewState的,那么是如何传值的呢?

 

三种传值方法

  ViewData:针对单一页面(用于一个方法中)进行值传递,跟WebForm中的ViewState在些神似

      使用:  this.ViewData["ViewDataTest"] = "ViewData测试";

  调用: <%:Html.Encode(ViewData["ViewDataTest"]) %>

 

      TempData:TempData是跨页面传输的,可在多个页面中设置使用。存于Session中,在每次执行请求中,控制器每次从Session中 

        取出一次TempData,然后删除该Session。

   使用: this.ViewData["ViewDataTest"] = "ViewData测试";

   调用(多个页面): <%:Html.Encode(View

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值