ASP.NET中TempData,ViewData和ViewBag的比較

來源:互聯網
上載者:User

學習ASP.NET有大約一個月了,一直都是半生不熟的,因為之前的很長時間都是在做java開發,沒有時間 靜下來心來學習,加上ASP.NET的架構也很複雜,一時間也是看的昏頭轉向的,所以只能看到一點記錄一點, 慢慢積累,慢慢總結吧。

Action向View傳遞資料很簡單,方式也很多,最直接的就是我們向View傳遞 Model,這本身就是MVC的意義所在。如果是顯示一些訊息,像是錯誤資訊,可以使用 ViewData:

public ActionResult Index(){     ViewData["message"] = "Hello Word!";     return View();}

然後是視圖:

<asp:Content ID="indexContent" ContentPlaceHolderID="MainContent" runat="server">    <%: ViewData["message"]%></asp:Content>

實際效果如:

我們可以看到,ViewData就是 一個字典,它存放的是索引值對。

既然Action可以向View傳遞資料,那麼View是否可以修改資料然後再 回傳給Action呢?

我們對代碼這樣修改:

public ActionResult Index(){      ViewData["message"] = "Hello Word!";      return View();}    public ActionResult About(){      string message = ViewData["message"] as string;      if (message == "Hello")      {           ViewData["message2"] = "已經修改";       }      else      {           ViewData["message2"] = "沒有修改";      }     return View();}

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.