前言
在传统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