亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > .NET > 正文

ASP.NET中MVC傳遞數據的幾種形式總結

2024-07-10 13:29:28
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了ASP.NET中MVC傳遞數據的幾種形式,以實例形式較為詳細的分析總結了MVC數據傳遞的相關技巧與注意事項,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了ASP.NET中MVC傳遞數據的幾種形式。分享給大家供大家參考。具體如下:

在Asp.net mvc開發中,Controller需要向View提供Model,然后View將此Model渲染成HTML。這篇文章介紹三種由Controller向View傳遞數據的方式,實現一個DropDownList的顯示。

第一種:ViewData

ViewData是一個Dictionary。使用非常簡單,看下面代碼:

 

 
  1. public ActionResult ViewDataWay(int id) 
  2. Book book =bookRepository.GetBook(id); 
  3. ViewData["Countries"] = new SelectList(PhoneValidator.Countries, book.Country); 
  4. return View(book); 

在View中使用下面代碼取值:

 

 
  1. <div class="editor-field"
  2. <%= Html.DropDownList("Country", ViewData["Countries"] as SelectList) %> 
  3. <%: Html.ValidationMessageFor(model => model.Country) %> 
  4. </div> 

上面代碼使用as將它轉換成SelectList。

處理POST代碼如下:

 

 
  1. [HttpPost] 
  2. public ActionResult ViewDataWay(int id, FormCollection collection) 
  3. Book book = bookRepository.GetBook(id); 
  4. UpdateModel<Book>(book); 
  5. bookRepository.Save(book); 
  6. return RedirectToAction("Details"new { id=id}); 

第二種:ViewModel

使用ViewModel的方式,我們先創建一個BookViewModel,代碼如下:

 

 
  1. public class BookViewModel  
  2. {  
  3. public Book Book  
  4. {  
  5. get;  
  6. set;  
  7. }  
  8. public SelectList Countries 
  9. get; 
  10. set; 
  11. public BookViewModel(Book book) 
  12. Book = book; 
  13. Countries = new SelectList(PhoneValidator.Countries,book.Country); 

在控制器的Aciton使用ViewModel存放數據的代碼如下:

 

 
  1. public ActionResult ViewModelWay(int id) 
  2. Book book = bookRepository.GetBook(id); 
  3. return View(new BookViewModel(book)); 

在View中,這種方式比第一種方式好在:它支持智能感應。

效果和第一種方式一樣。

第三種:TempData

使用TempData和使用ViewData方法是一樣的。

Action代碼如下:

 

 
  1. public ActionResult TempDataWay(int id) 
  2. Book book = bookRepository.GetBook(id); 
  3. TempData["Countries"] = new SelectList(PhoneValidator.Countries, book.Country); 
  4. return View(book); 

View取值的代碼如下:

 

 
  1. <div class="editor-field"
  2. <%= Html.DropDownList("Country", TempData["Countries"] as SelectList) %> 
  3. <%: Html.ValidationMessageFor(model => model.Country) %> 
  4. </div> 

效果:第一種方式一樣。

TempData和ViewData的區別

做個簡單的測試看下看下TempData和ViewData的區別

 

 
  1. public ActionResult Test1()  
  2. {  
  3. TempData["text"] = "1-2-3";  
  4. ViewData["text"] = "1-2-3";  
  5. return RedirectToAction("Test2");  
  6. public ActionResult Test2() 
  7. string text1 = TempData["text"] as string; 
  8. string text2 = ViewData["text"] as string; 
  9. return View(); 

RedirectToAction跳轉Action后,ViewData的值已經被清空,而TempData沒有被清空,這是它們的區別之一。

希望本文所述對大家的asp.net程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
狠狠色狠狠色综合日日小说| 日韩精品亚洲精品| 伊人伊成久久人综合网小说| 国产欧美日韩免费看aⅴ视频| 亚洲精品久久久久久久久| 欧美肥老妇视频| 欧美在线亚洲在线| 尤物九九久久国产精品的分类| 色婷婷av一区二区三区在线观看| 久久久久久久久亚洲| 亚洲色图第三页| 久久综合伊人77777蜜臀| 日韩中文字幕免费| 国产亚洲激情在线| 国产精品爱啪在线线免费观看| 久久综合亚洲社区| 久久精品免费播放| 欧美影院在线播放| 欧美午夜激情在线| 日韩欧美成人精品| 国产午夜精品理论片a级探花| 日韩电影中文 亚洲精品乱码| 久久香蕉频线观| 黄色成人在线免费| 亚洲欧美国产精品久久久久久久| 26uuu亚洲伊人春色| 亚洲欧美精品suv| 欧美激情二区三区| 亚洲欧美日韩图片| 成人精品视频久久久久| 26uuu另类亚洲欧美日本一| 欧美xxxx18性欧美| 欧美日本啪啪无遮挡网站| 国产一区二区黄| 国产成人啪精品视频免费网| 日本精品视频在线观看| 亚洲欧美在线看| 777国产偷窥盗摄精品视频| 久久久久久999| 亚洲一区精品电影| 欧美成人午夜激情在线| y97精品国产97久久久久久| 国产成人精品国内自产拍免费看| 国产亚洲美女精品久久久| 国产精品丝袜久久久久久高清| 成人福利视频在线观看| 久久久噜噜噜久久久| 黑人精品xxx一区| 久久久91精品国产一区不卡| 久久色在线播放| 精品国产精品自拍| 日本欧美国产在线| 久久综合色影院| 亚洲精品久久久久久久久久久久久| 久久久精品一区二区三区| 亚洲一区国产精品| 日韩成人在线免费观看| 国产精品久久久久一区二区| 日韩免费在线看| 亚洲精品一区二区三区婷婷月| 91精品国产成人www| 日韩电影第一页| 性欧美在线看片a免费观看| 久久精品99无色码中文字幕| 亚洲精品999| 欧美大片va欧美在线播放| 欧美成人免费全部观看天天性色| 久久九九全国免费精品观看| 成人在线视频福利| 亚洲女人天堂成人av在线| 成人午夜激情网| 日韩大片在线观看视频| 日韩中文字幕视频在线观看| 久久99久久99精品中文字幕| 福利一区福利二区微拍刺激| www亚洲欧美| 国产精品久久久久久久久久东京| 日韩成人激情影院| 奇米影视亚洲狠狠色| 久久久久亚洲精品国产| 欧美日韩国产在线看| 精品视频在线观看日韩| 欧美理论在线观看| 一区二区三区天堂av| 欧美大学生性色视频| 国产精品日韩专区| 国产亚洲欧洲黄色| 亚洲第一页中文字幕| 日韩av在线看| 亚洲欧美综合区自拍另类| 超碰日本道色综合久久综合| 成人久久一区二区三区| 夜夜嗨av一区二区三区免费区| 中文字幕少妇一区二区三区| 久精品免费视频| 欧美激情视频在线免费观看 欧美视频免费一| 91精品在线国产| 欧美人在线视频| 136fldh精品导航福利| 亚洲国产精品大全| 亚洲精品网站在线播放gif| 精品亚洲一区二区三区在线播放| 成人免费大片黄在线播放| 亚洲男人天堂手机在线| 国产精品美女av| 国产在线拍偷自揄拍精品| 欧美激情va永久在线播放| 国产精品爽爽爽| 国产精品视频一| 亚洲视频一区二区三区| 亚洲人成自拍网站| 欧美日韩国产999| 欧美精品videosex牲欧美| 成人激情视频小说免费下载| 亚洲乱码av中文一区二区| 亚洲影院色在线观看免费| 欧美裸身视频免费观看| 欧美精品第一页在线播放| 日韩欧美在线免费观看| 国产v综合ⅴ日韩v欧美大片| 精品国产成人av| 国内自拍欧美激情| 久久久久999| 国产a级全部精品| 午夜精品久久久久久99热软件| 91性高湖久久久久久久久_久久99| 97在线视频免费播放| 久久亚洲欧美日韩精品专区| 91精品国产色综合久久不卡98| 亚洲福利视频免费观看| 91高潮精品免费porn| 精品福利在线视频| 精品久久久久久久久国产字幕| 精品久久久久国产| 久久综合网hezyo| 国产精品久久国产精品99gif| 欧美激情视频网| 北条麻妃久久精品| 亚洲成人激情视频| 亚洲精品成人久久电影| 97超碰蝌蚪网人人做人人爽| 日韩av电影手机在线| 亚洲国产精久久久久久久| 一区二区福利视频| 国产有码一区二区| 亚洲精品一区在线观看香蕉| 久久综合久久88| 97久久久免费福利网址| 日本韩国欧美精品大片卡二| 国内精品免费午夜毛片| 成人黄色在线观看| 亚洲美女av网站| 亚洲有声小说3d| 九九热最新视频//这里只有精品| 777午夜精品福利在线观看| 亚洲影院色在线观看免费| 欧美特黄级在线| 国产精品久久久久7777婷婷| 国产a∨精品一区二区三区不卡| 中文字幕亚洲欧美日韩在线不卡| 国产成人91久久精品| 91sao在线观看国产| 91在线观看免费| 丰满岳妇乱一区二区三区|