[Day 05] ASP.NET MVC後端傳資料到前端介紹(一) | mvc資料傳遞
之前我們建了一個專案,但是完全沒有從後端帶任何資料到前端的頁面,那到底要如何將資料帶到前端呢?在MVC中主要有兩種方式,一種是用ViewBag或ViewData等物件傳遞,另外一種方式是使用Model,那我們今天先看一下第一種方式。首先這類的方式有三種物件ViewData物件:屬於DictionaryObject,能放入任何資料,使用Key/Value的概念存取。ViewBag物件:它和ViewData一樣,使用Key/Value存取,並能放入任何的資料,但不同的是,它能產生「動態屬性」。TempData物件:TempData由字面上的意思看來,即告訴我們是「暫存」的資料,而暫存又是暫...
之前我們建了一個專案,但是完全沒有從後端帶任何資料到前端的頁面,那到底要如何將資料帶到前端呢?在MVC 中主要有兩種方式,一種是用ViewBag或ViewData等物件傳遞,另外一種方式是使用Model,那我們今天先看一下第一種方式。
首先這類的方式有三種物件
ViewData 物件:屬於 Dictionary Object ,能放入任何資料,使用 Key / Value 的概念存取。 ViewBag 物件:它和 ViewData 一樣,使用 Key / Value 存取,並能放入任何的資料,但不同的是,它能產生「動態屬性」。 TempData 物件:TempData 由字面上的意思看來,即告訴我們是「暫存」的資料,而暫存又是暫存多久?其實就是一次的請求,假定我們今天輸入網址 /Home/Index 而透過 Redirect 的方法轉向至 /Home/About ,若是用 ViewData 或 ViewBag 資料及會消失,但若透過 TempData 它能將資料傳遞至 /Home/About 供其使用,而最後返回頁面後 TempData 內的資料隨即消失,代表它的生命週期只有一次性,當使用一次我們就丟掉它。之前有看過一篇文章,有提到ViewData的一些問題,還是建議使用ViewBag就好了,雖然我忘記是什麼問題,不過基本上我幾乎沒有使用過ViewData,所以這部分就跳過,我這次參考的文章也沒有提到ViewData的實作,在最後會附上這次的參考網頁,雖然大部分參考的內容都寫在上面了,下面的大多是自己的想法跟經驗,不過這一篇有提到一個很重要的觀念,記在下面:
ViewData和ViewBag內的資料都是透過Key/Value的方法來存取,但請注意在同個頁面中他們的key值還是不能重複,否則將會出現問題,後面的值會把前面的值蓋過去,導致讀出來的資料是有問題的。網站上也有簡單的範例說明,有興趣的話可以去看。
我幾乎只會用到ViewBag來傳遞物件,不會用到ViewData及TempData,所以今天的例子也只用到ViewBag而已,ViewBag可以傳遞的物件很多,包括單一變數,一個...
取得本站獨家住宿推薦 15%OFF 訂房優惠
[Asp .Net MVC] Controller and View 2
前言本篇介紹將參數傳遞到Controller 與將資料傳遞到View 的方法,雖然與正統使用ViewModel的方式不同,但其中包含了許多基礎的概念,分享給.
ASP.NET MVC中Controller與View之間的資料傳遞總結
在ASP.NET MVC中,經常會在Controller與View之間傳遞資料,因此,熟練、靈活的掌握這兩層之間的資料傳遞方法就非常重要。本文從兩個方面進行 ...