Controller:
ViewData["date1"] = DateTime.Now;
ViewBag.date2 = DateTime.Now;
View:
<div>
@(((DateTime)ViewData["date2"]).ToShortDateString())
<hr />
@ViewBag.date1.ToShortDateString()
</div>
from: http://www.dotblogs.com.tw/inblackbox/archive/2013/06/03/105240.aspx
1.ViewData
存放在物件中,生命週期為一個頁面。
Controller :
存放在物件中,生命週期為一個頁面。
Controller :
1 | public ActionResult Index() |
2 | { |
3 | ViewData[ "message" ] = "訊息" ; |
4 | return View(); |
5 | } |
View :
1 | @ViewData["message"] |
2.ViewBag
這是MVC 3 之後新增的,使用方式和ViewData一樣,差別在於ViewBag 使用 dynamic 型別,可免去手動轉型的麻煩,使用上較為方便,但也因為動態型別關係,速度上會略比ViewData來的慢(人體無感吧@@)。
Controller :
這是MVC 3 之後新增的,使用方式和ViewData一樣,差別在於ViewBag 使用 dynamic 型別,可免去手動轉型的麻煩,使用上較為方便,但也因為動態型別關係,速度上會略比ViewData來的慢(人體無感吧@@)。
Controller :
1 | public ActionResult Index() |
2 | { |
3 | ViewBag.message = "訊息" ; |
4 | return View(); |
5 | } |
View :
1 | @ViewBag.message |
3.Temp Data
資料會儲存在Session 中,其生命週期為一個 Request,一旦Request結束就會被刪除。 因此我們可善用此特性讓資料跨不同Action傳遞至View,如RedirectToAction 中作使用,範例如下:
Controller :
資料會儲存在Session 中,其生命週期為一個 Request,一旦Request結束就會被刪除。 因此我們可善用此特性讓資料跨不同Action傳遞至View,如RedirectToAction 中作使用,範例如下:
Controller :
01 | public ActionResult Index() |
02 | { |
03 | TempData[ "status" ] = "我是從index送過來的!" ; |
04 | return RedirectToAction( "about" ); |
05 | } |
06 |
07 | public ActionResult about() |
08 | { |
09 | return View(); |
10 | } |
http://www.dotnet-tricks.com/Tutorial/mvc/9KHW190712-ViewData-vs-ViewBag-vs-TempData-vs-Session.html
0 意見:
張貼留言