ViewData 只在当前 Action 中有效,生命周期和 View 相同;
TempData 的数据至多只能经过一次Controller传递,并且每个元素至多只能被访问一次,访问以后,自动被删除。
TempData 一般用于临时的缓存内容或抛出错误页面时传递错误信息,可以将TempData 在使用之前存储到相应的 ViewData 中以备循环使用。
1. 使用ViewData传递数据
我们在Controller中定义如下:
ViewData[“Message”] = “Hello word!”;
然后在View中读取Controller中定义的ViewData数据,代码如下:
<% = Html.Encode(ViewData[“Message”]) %>
2. 使用TempData传递数据
我们在Controller中定义如下:
TempData[“Message”] = “Hello word!”;
然后在View中读取Controller中定义的TempData数据,代码如下:
<% = Html.Encode(TempData [“Message”]) %>
3. 使用Model传递数据
在cs程序中
return View(类值); 或 ViewData.Model = 类值;
使用Model传递数据的时候,通常在创建View的时候我们会选择创建强类型View如下图所示:
在页面 @model 类名
使用时 @Model.xxx M要大写
你最好定一个局部视图吧。用Html.RenderPartial("试图名称",Model.ToList());
至于ViewData["ColumnsNameList"]里的内容,直接在局部视图也用这个VIewData["ColumnsNameList"]。