本節(jié)主要講解了PartialView
Q70. 什么是ASP.NET MVC 中的 Partial View(分布視圖)?
Ans. Partial view 類似于ASP.NET Web forms 中的user control(用戶控件)用來進行代碼重用。 Partial views 幫助我們減少重復(fù)代碼。
因此 Partial views是可重用的,像Header和Footer視圖那樣。
我們可以使用它去顯示博客評論,商品類別,社交按鈕,動態(tài)時鐘日歷等等。
創(chuàng)建partial view 的最佳實踐是在Shared文件夾創(chuàng)建并以 "_"為前綴命名,但這并不是強制的。視圖以 "_" 為前命名則說明該view是一個可重用的。
Q71. 如何在controller中返回partial view ?
Ans.return PartialView(options);
其中 options可以是一個Model或View名稱。
Q72. ASP.NET MVC有哪幾種方式用來返回一個Partial View?
Ans. 主要有以下四種方式:
Html.RenderPartial
這種方式的結(jié)果會直接寫入Http響應(yīng)流,也就意味著它使用與當(dāng)前頁面/模板相同的TextWriter對象。
這個方法返回值類型為void。
可以直接使用不需要創(chuàng)建action。
當(dāng)Partial view中要顯示的數(shù)據(jù)已經(jīng)在相應(yīng)的View Model中時,使用RenderPartial 方法將非常好用。比如:在博客中要顯示一篇文章的評論,就可以使用RenderPartial來顯示評論,因為文章信息及評論一般文章的View Model中填充了。
@{Html.RenderPartial("_Comments");}
這個方法比Partial方法快是因為它的結(jié)果直接寫入響應(yīng)流。
Html.RenderAction
T這種方式的結(jié)果會直接寫入Http響應(yīng)流,也就意味著它使用與當(dāng)前頁面/模板相同的TextWriter對象。
這種方式,我們需要創(chuàng)建一個對應(yīng)的child action 去呈現(xiàn)對應(yīng)的partial view。
當(dāng)Partial view中要顯示的數(shù)據(jù)與相應(yīng)的View model相互獨立時,使用這種方式比較有用。比如:在博客中需要在每一個頁面顯示文章分類列表。因為在文章分類列表會在不同的model中進行填充。
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍牙鎖 2017-07-26
- 消息隊列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標分割】 2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26