MVC3之HTML輔助方法 第十三講

2022-01-23 14:59:08 字數 2809 閱讀 4020

那麼開始今天的章節,由於前兩天比較忙,老魏更新的慢了,以後慢慢不上來吧!今天我們要說的是asp.net mvc 中的html輔助方法。html輔助方法能夠幫助我們能夠快速生成檢視**,通過html輔助方法可以向像編寫c#一樣編寫html檔案。

這些輔助方法都位於system.web.mvc.html這個命名空間,大家可以從這個命名空間中檢視這些方法。當了,由於這些輔助方法只是用來生成html內容的,所以老魏這裡呢就不再詳細的介紹,根據下面我舉的例子,大家可以依葫蘆畫瓢看著幫助文件來學習。

而html輔助方法是htmlhelper類的擴充套件方法,所以本章我們主要來看看這些輔助方法是如何幫助我們快速的開發視**件。

一、超連結 

htmlhelper的擴充套件方法提供以下的擴充套件方法可以生成超連結。

public static mvchtmlstring actionlink(this htmlhelper htmlhelper, string linktext, string actionname);

public static mvchtmlstring actionlink(this htmlhelper htmlhelper, string linktext, string actionname, object routevalues);

public

static

mvchtmlstring actionlink(

this

htmlhelper htmlhelper,

string

linktext,

string

actionname, routevaluedictionary routevalues);

public

static

mvchtmlstring actionlink(

this

htmlhelper htmlhelper,

string

linktext,

string

actionname,

string

controllername);

public static mvchtmlstring actionlink(this htmlhelper htmlhelper, string linktext, string actionname, object routevalues, object htmlattributes);

這麼多過載方法我們並不需要全部的記住,而是在適當的時候使用適當的方法。我們來學習一下常用的方法。

public static mvchtmlstring actionlink(this htmlhelper htmlhelper, string linktext, string actionname);
這個方法是用來跳轉到對應的action。

@html.actionlink("這是超連線", "index");

這是超連線

但是需要注意的是的,actionname只能是檢視所在的控制下的action方法。

public static mvchtmlstring actionlink(this htmlhelper htmlhelper, string linktext, string actionname, object routevalues);
這個方法生成的超連線可以傳遞一下引數。

@html.actionlink("這是超連線", "index", new );

這是超連線

public static mvchtmlstring actionlink(this htmlhelper htmlhelper, string linktext, string actionname, string controllername);
這個方法生成的連線可以跨controller

@html.actionlink("這是超連線", "test","about");

這是超連線;

public static mvchtmlstring actionlink(this htmlhelper htmlhelper, string linktext, string actionname, string controllername,object routevalues, object htmlattributes);
我們可以通過最後乙個引數來給html元素新增屬性。

這裡需要注意的地方是如果要給超連結新增乙個class的css屬性,那麼必須在前面加上@符號,因為class是c#的關鍵字。

表單 當然除了超連結,html輔助方法也提供了對表單的支援。如果我們使用輔助方法來生成表單可以通過兩種方法,只是風格不同。 

通過html.beginform()方法來宣告乙個表單。又有beginform方法的過載比較多,這裡就不一一枚舉了,我們來看一下常用的過載方法。大家可以從system.web.mvc.html.formextensions中檢視一下過載的方法。

@using (html.beginform())

那麼我們可以看到生成的表單中action的位址為」/」。所以我們可以通過其他的過載函式來生成表單。

@using (html.beginform("test","home")) 

在上面的例子中,我們使用到了表單元素,那麼這些表單元素大家可以從system.web.mvc.htmlinputextensions中檢視,這裡老魏就不再做介紹了(因為比較簡單)。

MVC3之FileResult 第十二講

在controller中提供了6個方法,分別返回的是上面三個子類。我們來看一下這六個方法的定義。protected internal filecontentresult file byte filecontents,string contenttype protected internal file...

mvc3學習之 安裝

安裝 asp.net mvc 3 完整步驟教程 musicstore 這幾天正在學習 mvc 3 並且使用微軟的 musicstore 一步一步的學習的。在使用過程中,遇到了一些配置 安裝問題 看到第四課出現問題 為了防止自己忘記,於是寫個日誌記錄一下,同時也方便那些正在學習 mvc 3 的童鞋。以...

MVC 表單和HTML輔助方法(1)

在mvc的檢視view裡,建立表單時可以使用系統提供的方法快捷建立表單,這裡,我們建立乙個表,並與傳統的html元素中的表單做對比。建立乙個view控制器,在控制器裡為名為index的action建立檢視。檢視裡新增表單。一些注意事項我在截圖的注釋裡也展示了。這裡我們把index檢視裡表單的資料提交...