日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

MVC-04 視圖(2)

 昵稱10504424 2013-12-11

三、View如何從Aciton取得數(shù)據(jù)

從Action取得數(shù)據(jù),在ASP.NET MVC可區(qū)分成兩種方式,一種是“使用弱類型取得數(shù)據(jù)”,另一種則是“使用強(qiáng)類型取得數(shù)據(jù)”,兩者的差別在于View頁面最上方聲明的方式。

如果View頁面使用弱類型接收來自Controller的數(shù)據(jù),在View頁面里完全不需要有任何聲明,數(shù)據(jù)可以從ViewData、ViewBag或TempData取得,在頁面中也可以通過@Model屬性,取得從Action傳來的ViewData.Model數(shù)據(jù)模型,但@Model數(shù)據(jù)模型的類型將會(huì)是object,所以算是弱類型的傳值方式。

如果View頁面使用強(qiáng)類型方式接收來自Controller的數(shù)據(jù),那么,必須在View頁面的第一行使用@model關(guān)鍵字引入一個(gè)View頁面專用的數(shù)據(jù)模型類型參考。使用這種方式有助于提升View的開發(fā)效率,因?yàn)榭梢允褂肰isual Studio 2012的Intellisense提示功能。

1.使用弱類型模型取得數(shù)據(jù)

2.使用強(qiáng)類型模型取得數(shù)據(jù)

四、HTML輔助方法

顧名思義,HTML輔助方法(HTML Helper)就是用來輔助產(chǎn)生HTML只用,在開發(fā)View的時(shí)候一定會(huì)面對(duì)許多HTML標(biāo)簽,處理這些HTML的工作非常繁瑣,為了降低View的復(fù)雜度,可以使用HTML輔助方法幫助你產(chǎn)生一些HTML標(biāo)簽或內(nèi)容,因這些HTML標(biāo)簽都有固定標(biāo)準(zhǔn)的寫法,所以將其包裝成HTML輔助方法,可讓View開發(fā)更快速,也可以避免不必要的語法錯(cuò)誤。

ASP.NET MVC中內(nèi)建了許多HTML輔助方法,這些HTML輔助方法都是利用C#3.0的擴(kuò)充方法特性,將各種不同的HTML輔助方法擴(kuò)充在HtmlHelper類別里,并且都擁有多載。

1.使用HTML輔助方法輸出超鏈接

使用Html.AcionLink()時(shí),第一個(gè)參數(shù)為超鏈接的顯示文字,此參數(shù)不可以輸入空字符串、空白字符串或null值,否則會(huì)跑出The Value cannot be null or empty的異常。

如果想設(shè)計(jì)一個(gè)包含超鏈接的圖片按鈕,可選擇用<a>超鏈接標(biāo)簽來輸出,并通過CSS加上一個(gè)背景圖,如下。

ASP.NET MVC還有另一個(gè)Html.RouteLink輔助方法,其用法與Html.ActionLink非常相似,差別僅在于輸入的參數(shù)要以RouteValue為主。

2.使用HTML輔助方法輸出表單

(1)產(chǎn)生表單元素

使用using語法產(chǎn)生表單標(biāo)簽:

使用Html.BeginForm輔助方法輸出的表單預(yù)設(shè)輸出的method屬性會(huì)是POST,如果想指定為GET的話,可以輸入第三個(gè)參數(shù),如下。

如果想要用HTML表單實(shí)現(xiàn)文件上傳的功能,那么必須在輸出的<form>表單標(biāo)簽加上一個(gè)enctype屬性,且內(nèi)容必須設(shè)定為multipart/form-data,如下。

Html輔助方法并沒有File方法,因此必須用TextBox方法來代替,并傳入第三個(gè)參數(shù)將內(nèi)建的type屬性換成file即可。

(2)模擬各種HTTP動(dòng)詞

(3)常用表單輸入欄位

(4)使用強(qiáng)類型輔助方法

3.使用HTML輔助方法載入分部視圖

4.使用視圖模板輸出內(nèi)容

5.自定義HTML輔助方法

五、Url輔助方法

六、Ajax輔助方法

1.使用Ajax超鏈接功能

2.使用Ajax表單功能

3.了解AjaxOptions類型

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多