ASP.NET MVC - 輔助方法



在 ASP.Net Web 窗體中,開發人員使用工具箱在任何特定頁面上新增控制元件。但是,在 ASP.NET MVC 應用程式中,沒有可用的工具箱來將 HTML 控制元件拖放到檢視上。在 ASP.NET MVC 應用程式中,如果要建立檢視,則它應包含 HTML 程式碼。因此,那些剛接觸 MVC,尤其是具有 Web 窗體背景的開發人員會發現這有點困難。

為了克服這個問題,ASP.NET MVC 提供了 HtmlHelper 類,其中包含不同的方法,可幫助您以程式設計方式建立 HTML 控制元件。所有 HtmlHelper 方法都會生成 HTML 並將結果作為字串返回。最終的 HTML 是由這些函式在執行時生成的。HtmlHelper 類旨在生成 UI,不應在控制器或模型中使用。

有不同型別的輔助方法。

  • Createinputs - 建立文字框和按鈕的輸入。

  • Createlinks - 建立基於路由表中資訊的連結。

  • Createforms - 建立可以回發到我們的操作或回發到不同控制器上的操作的表單標籤。

序號 方法和描述
1

Action(String)

過載。呼叫指定子操作方法並將結果作為 HTML 字串返回。(由 ChildActionExtensions 定義)

2

Action(String, Object)

過載。使用指定引數呼叫指定子操作方法並將結果作為 HTML 字串返回。(由 ChildActionExtensions 定義)

3

Action(String, RouteValueDictionary)

過載。使用指定的引數呼叫指定子操作方法並將結果作為 HTML 字串返回。(由 ChildActionExtensions 定義)

4

Action(String, String)

過載。使用指定的控制器名稱呼叫指定子操作方法並將結果作為 HTML 字串返回。(由 ChildActionExtensions 定義)

5

Action(String, String, Object)

過載。使用指定的引數和控制器名稱呼叫指定子操作方法並將結果作為 HTML 字串返回。(由 ChildActionExtensions 定義)

6

Action(String, String, RouteValueDictionary)

過載。使用指定的引數和控制器名稱呼叫指定子操作方法並將結果作為 HTML 字串返回。(由 ChildActionExtensions 定義)

7

ActionLink(String, String)

過載。(由 LinkExtensions 定義)

8

ActionLink(String, String, Object)

過載。(由 LinkExtensions 定義)

9

ActionLink(String, String, Object, Object)

過載。(由 LinkExtensions 定義)

10

ActionLink(String, String, RouteValueDictionary)

過載。(由 LinkExtensions 定義)

11

ActionLink(String, String, RouteValueDictionary, IDictionary<String, Object>)

過載。(由 LinkExtensions 定義)

12

ActionLink(String, String, String)

過載。(由 LinkExtensions 定義)

13

ActionLink(String, String, String, Object, Object)

過載。(由 LinkExtensions 定義)

14

ActionLink(String, String, String, RouteValueDictionary, IDictionary<String, Object>)

過載。(由 LinkExtensions 定義)

15

ActionLink(String, String, String, String, String, String, Object, Object)

過載。(由 LinkExtensions 定義)

16

ActionLink(String, String, String, String, String, String, RouteValueDictionary, IDictionary<String, Object>)

過載。(由 LinkExtensions 定義)

17

BeginForm()

過載。將開啟的 <form> 標記寫入響應。表單使用 POST 方法,請求由檢視的操作方法處理。(由 FormExtensions 定義)

18

BeginForm(Object)

過載。將開啟的 <form> 標記寫入響應,並在 action 屬性中包含路由值。表單使用 POST 方法,請求由檢視的操作方法處理。(由 FormExtensions 定義)

19

BeginForm(RouteValueDictionary)

過載。將開啟的 <form> 標記寫入響應,並在 action 屬性中包含來自路由值字典的路由值。表單使用 POST 方法,請求由檢視的操作方法處理。(由 FormExtensions 定義。)

20

BeginForm(String, String)

過載。將開啟的 <form> 標記寫入響應,並將 action 標記設定為指定的控制器和操作。表單使用 POST 方法。(由 FormExtensions 定義)

21

BeginForm(String, String, FormMethod)

過載。將開啟的 <form> 標記寫入響應,並將 action 標記設定為指定的控制器和操作。表單使用指定的 HTTP 方法。(由 FormExtensions 定義)

22

BeginForm(String, String, FormMethod, IDictionary<String, Object>)

過載。將開啟的 <form> 標記寫入響應,並將 action 標記設定為指定的控制器和操作。表單使用指定的 HTTP 方法,幷包含來自字典的 HTML 屬性。(由 FormExtensions 定義)

23

BeginForm(String, String, FormMethod, Object)

過載。將開啟的 <form> 標記寫入響應,並將 action 標記設定為指定的控制器和操作。表單使用指定的 HTTP 方法,幷包含 HTML 屬性。(由 FormExtensions 定義)

24

BeginForm(String, String, Object)

過載。將開啟的 <form> 標記寫入響應,並將 action 標記設定為指定的控制器、操作和路由值。表單使用 POST 方法。(由 FormExtensions 定義)

25

BeginForm(String, String, Object, FormMethod)

過載。將開啟的 <form> 標記寫入響應,並將 action 標記設定為指定的控制器、操作和路由值。表單使用指定的 HTTP 方法。(由 FormExtensions 定義)

26

BeginForm(String, String, Object, FormMethod, Object)

過載。將開啟的 <form> 標記寫入響應,並將 action 標記設定為指定的控制器、操作和路由值。表單使用指定的 HTTP 方法,幷包含 HTML 屬性。(由 FormExtensions 定義)

27

BeginForm(String, String, RouteValueDictionary)

過載。將開啟的 <form> 標記寫入響應,並將 action 標記設定為指定的控制器、操作和來自路由值字典的路由值。表單使用 POST 方法。(由 FormExtensions 定義)

28

BeginForm(String, String, RouteValueDictionary, FormMethod)

過載。將開啟的 <form> 標記寫入響應,並將 action 標記設定為指定的控制器、操作和來自路由值字典的路由值。表單使用指定的 HTTP 方法。(由 FormExtensions 定義)

29

BeginForm(String, String, RouteValueDictionary, FormMethod, IDictionary<String, Object>)

過載。將開啟的 <form> 標記寫入響應,並將 action 標記設定為指定的控制器、操作和來自路由值字典的路由值。表單使用指定的 HTTP 方法,幷包含來自字典的 HTML 屬性。(由 FormExtensions 定義)

30

BeginRouteForm(Object)

過載。將開啟的 <form> 標記寫入響應。當用戶提交表單時,請求將由路由目標處理。(由 FormExtensions 定義)

31

BeginRouteForm(RouteValueDictionary)

過載。將開啟的 <form> 標記寫入響應。當用戶提交表單時,請求將由路由目標處理。(由 FormExtensions 定義)

32

BeginRouteForm(String)

過載。將開啟的 <form> 標記寫入響應。當用戶提交表單時,請求將由路由目標處理。(由 FormExtensions 定義)

33

BeginRouteForm(String, FormMethod)

過載。將開啟的 <form> 標記寫入響應。當用戶提交表單時,請求將由路由目標處理。(由 FormExtensions 定義)

34

BeginRouteForm(String, FormMethod, IDictionary<String, Object>)

過載。將開啟的 <form> 標記寫入響應。當用戶提交表單時,請求將由路由目標處理。(由 FormExtensions 定義)

35

BeginRouteForm(String, FormMethod, Object)

過載。將開啟的 <form> 標記寫入響應。當用戶提交表單時,請求將由路由目標處理。(由 FormExtensions 定義)

36

BeginRouteForm(String, Object)

過載。將開啟的 <form> 標記寫入響應。當用戶提交表單時,請求將由路由目標處理。(由 FormExtensions 定義)

37

BeginRouteForm(String, Object, FormMethod)

過載。將開啟的 <form> 標記寫入響應。當用戶提交表單時,請求將由路由目標處理。(由 FormExtensions 定義)

38

BeginRouteForm(String, Object, FormMethod, Object)

過載。將開啟的 <form> 標記寫入響應。當用戶提交表單時,請求將由路由目標處理。(由 FormExtensions 定義)

39

BeginRouteForm(String, RouteValueDictionary)

過載。將開啟的 <form> 標記寫入響應。當用戶提交表單時,請求將由路由目標處理。(由 FormExtensions 定義)

40

BeginRouteForm(String, RouteValueDictionary, FormMethod)

過載。將開啟的 <form> 標記寫入響應。當用戶提交表單時,請求將由路由目標處理。(由 FormExtensions 定義)

41

BeginRouteForm(String, RouteValueDictionary, FormMethod, IDictionary<String, Object>)

過載。將開啟的 <form> 標記寫入響應。當用戶提交表單時,請求將由路由目標處理。(由 FormExtensions 定義)

42

CheckBox(String)

過載。使用指定的 HTML 輔助方法和表單欄位的名稱返回複選框輸入元素。(由 InputExtensions 定義)

43

CheckBox(String, Boolean)

過載。使用指定的 HTML 輔助方法、表單欄位的名稱和一個值來指示覆選框是否被選中,返回複選框輸入元素。(由 InputExtensions 定義)

44

CheckBox(String, Boolean, IDictionary<String, Object>)

過載。使用指定的 HTML 輔助方法、表單欄位的名稱、一個值來指示覆選框是否被選中以及 HTML 屬性,返回複選框輸入元素。(由 InputExtensions 定義)

45

CheckBox(String, Boolean, Object)

過載。使用指定的 HTML 輔助方法、表單欄位的名稱、一個值來指示覆選框是否被選中以及 HTML 屬性,返回複選框輸入元素。(由 InputExtensions 定義)

46

CheckBox(String, IDictionary<String, Object>)

過載。使用指定的 HTML 輔助方法、表單欄位的名稱和 HTML 屬性,返回複選框輸入元素。(由 InputExtensions 定義)

47

CheckBox(String, Object)

過載。使用指定的 HTML 輔助方法、表單欄位的名稱和 HTML 屬性,返回複選框輸入元素。(由 InputExtensions 定義)

48

Display(String)

過載。返回由字串表示式表示的物件中每個屬性的 HTML 標記。(由 DisplayExtensions 定義)

49

Display(String, Object)

過載。使用其他檢視資料返回由字串表示式表示的物件中每個屬性的 HTML 標記。(由 DisplayExtensions 定義)

50

Display(String, String)

過載。使用指定的模板返回由表示式表示的物件中每個屬性的 HTML 標記。(由 DisplayExtensions 定義)

51

Display(String, String, Object)

過載。使用指定的模板和其他檢視資料返回由表示式表示的物件中每個屬性的 HTML 標記。(由 DisplayExtensions 定義)

52

Display(String, String, String)

過載。使用指定的模板和 HTML 欄位 ID 返回由表示式表示的物件中每個屬性的 HTML 標記。(由 DisplayExtensions 定義)

53

Display(String, String, String, Object)

過載。使用指定的模板、HTML 欄位 ID 和其他檢視資料返回由表示式表示的物件中每個屬性的 HTML 標記。(由 DisplayExtensions 定義)

54

DisplayForModel()

過載。返回模型中每個屬性的 HTML 標記。(由 DisplayExtensions 定義)

55

DisplayForModel(Object)

過載。使用其他檢視資料返回模型中每個屬性的 HTML 標記。(由 DisplayExtensions 定義)

56

DisplayForModel(String)

過載。使用指定的模板返回模型中每個屬性的 HTML 標記。(由 DisplayExtensions 定義)

57

DisplayForModel(String, Object)

過載。使用指定的模板和其他檢視資料返回模型中每個屬性的 HTML 標記。(由 DisplayExtensions 定義)

58

DisplayForModel(String, String)

過載。使用指定的模板和 HTML 欄位 ID 返回模型中每個屬性的 HTML 標記。(由 DisplayExtensions 定義)

59

DisplayForModel(String, String, Object)

過載。使用指定的模板、HTML 欄位 ID 和其他檢視資料返回模型中每個屬性的 HTML 標記。(由 DisplayExtensions 定義)

60

DisplayName(String)

獲取顯示名稱。(由 DisplayNameExtensions 定義)

61

DisplayNameForModel()

獲取模型的顯示名稱。(由 DisplayNameExtensions 定義)

62

DisplayText(String)

返回由指定表示式表示的物件中每個屬性的 HTML 標記。(由 DisplayTextExtensions 定義)

63

DropDownList(String)

過載。使用指定的 HTML 輔助方法和表單欄位的名稱返回單選選擇 select 元素。(由 SelectExtensions 定義)

64

DropDownList(String, IEnumerable<SelectListItem>)

過載。使用指定的 HTML 輔助方法、表單欄位的名稱和指定的列表項返回單選選擇 select 元素。(由 SelectExtensions 定義)

65

DropDownList(String, IEnumerable<SelectListItem>, IDictionary<String, Object>)

過載。使用指定的 HTML 幫助器、表單欄位名稱、指定列表項和指定的 HTML 屬性返回一個單選選擇元素。(由 SelectExtensions 定義)

66

DropDownList(String, IEnumerable<SelectListItem>, Object)

過載。使用指定的 HTML 幫助器、表單欄位名稱、指定列表項和指定的 HTML 屬性返回一個單選選擇元素。(由 SelectExtensions 定義)

67

DropDownList(String, IEnumerable<SelectListItem>, String)

過載。使用指定的 HTML 幫助器、表單欄位名稱、指定列表項和選項標籤返回一個單選選擇元素。(由 SelectExtensions 定義)

68

DropDownList(String, IEnumerable<SelectListItem>, String, IDictionary<String, Object>)

過載。使用指定的 HTML 幫助器、表單欄位名稱、指定列表項、選項標籤和指定的 HTML 屬性返回一個單選選擇元素。(由 SelectExtensions 定義)

69

DropDownList(String, IEnumerable<SelectListItem>, String, Object)

過載。使用指定的 HTML 幫助器、表單欄位名稱、指定列表項、選項標籤和指定的 HTML 屬性返回一個單選選擇元素。(由 SelectExtensions 定義)

70

DropDownList(String, String)

過載。使用指定的 HTML 幫助器、表單欄位名稱和選項標籤返回一個單選選擇元素。(由 SelectExtensions 定義)

71

Editor(String)

過載。為表示式所表示的物件中的每個屬性返回一個 HTML 輸入元素。(由 EditorExtensions 定義)

72

Editor(String, Object)

過載。使用其他檢視資料為表示式所表示的物件中的每個屬性返回一個 HTML 輸入元素。(由 EditorExtensions 定義)

73

Editor(String, String)

過載。使用指定的模板為表示式所表示的物件中的每個屬性返回一個 HTML 輸入元素。(由 EditorExtensions 定義)

74

Editor(String, String, Object)

過載。使用指定的模板和其他檢視資料為表示式所表示的物件中的每個屬性返回一個 HTML 輸入元素。(由 EditorExtensions 定義)

75

Editor(String, String, String)

過載。使用指定的模板和 HTML 欄位名稱為表示式所表示的物件中的每個屬性返回一個 HTML 輸入元素。(由 EditorExtensions 定義)

76

Editor(String, String, String, Object)

過載。使用指定的模板、HTML 欄位名稱和其他檢視資料為表示式所表示的物件中的每個屬性返回一個 HTML 輸入元素。(由 EditorExtensions 定義)

77

EditorForModel()

過載。為模型中的每個屬性返回一個 HTML 輸入元素。(由 EditorExtensions 定義)

78

EditorForModel(Object)

過載。使用其他檢視資料為模型中的每個屬性返回一個 HTML 輸入元素。(由 EditorExtensions 定義)

79

EditorForModel(String)

過載。使用指定的模板為模型中的每個屬性返回一個 HTML 輸入元素。(由 EditorExtensions 定義)

80

EditorForModel(String, Object)

過載。使用指定的模板和其他檢視資料為模型中的每個屬性返回一個 HTML 輸入元素。(由 EditorExtensions 定義)

81

EditorForModel(String, String)

過載。使用指定的模板名稱和 HTML 欄位名稱為模型中的每個屬性返回一個 HTML 輸入元素。(由 EditorExtensions 定義)

82

EditorForModel(String, String, Object)

過載。使用模板名稱、HTML 欄位名稱和其他檢視資料為模型中的每個屬性返回一個 HTML 輸入元素。(由 EditorExtensions 定義)

83

EndForm()

將結束標籤 </form> 呈現到響應中。(由 FormExtensions 定義)

84

Hidden(String)

過載。使用指定的 HTML 幫助器和表單欄位名稱返回一個隱藏的輸入元素。(由 InputExtensions 定義)

85

Hidden(String, Object)

過載。使用指定的 HTML 幫助器、表單欄位名稱和值返回一個隱藏的輸入元素。(由 InputExtensions 定義)

86

Hidden(String, Object, IDictionary<String, Object>)

過載。使用指定的 HTML 幫助器、表單欄位名稱、值和 HTML 屬性返回一個隱藏的輸入元素。(由 InputExtensions 定義)

87

Hidden(String, Object, Object)

過載。使用指定的 HTML 幫助器、表單欄位名稱、值和 HTML 屬性返回一個隱藏的輸入元素。(由 InputExtensions 定義)

88

Id(String)

獲取 HtmlHelper 字串的 ID。(由 NameExtensions 定義)

89

IdForModel()

獲取 HtmlHelper 字串的 ID。(由 NameExtensions 定義)

90

Label(String)

過載。返回一個 HTML 標籤元素和表示式所表示的屬性的屬性名稱。(由 LabelExtensions 定義)

91

Label(String, IDictionary<String, Object>)

過載。返回一個 HTML 標籤元素和表示式所表示的屬性的屬性名稱。(由 LabelExtensions 定義)

92

Label(String, Object)

過載。返回一個 HTML 標籤元素和表示式所表示的屬性的屬性名稱。(由 LabelExtensions 定義)

93

Label(String, String)

過載。使用標籤文字返回一個 HTML 標籤元素和表示式所表示的屬性的屬性名稱。(由 LabelExtensions 定義)

94

Label(String, String, IDictionary<String, Object>)

過載。返回一個 HTML 標籤元素和表示式所表示的屬性的屬性名稱。(由 LabelExtensions 定義)

95

Label(String, String, Object)

過載。返回一個 HTML 標籤元素和表示式所表示的屬性的屬性名稱。(由 LabelExtensions 定義)

96

LabelForModel()

過載。返回一個 HTML 標籤元素和模型所表示的屬性的屬性名稱。(由 LabelExtensions 定義)

97

LabelForModel(IDictionary<String, Object>)

過載。返回一個 HTML 標籤元素和表示式所表示的屬性的屬性名稱。(由 LabelExtensions 定義)

98

LabelForModel(Object)

過載。返回一個 HTML 標籤元素和表示式所表示的屬性的屬性名稱。(由 LabelExtensions 定義)

99

LabelForModel(String)

過載。使用標籤文字返回一個 HTML 標籤元素和表示式所表示的屬性的屬性名稱。(由 LabelExtensions 定義)

100

LabelForModel(String, IDictionary<String, Object>)

過載。返回一個 HTML 標籤元素和表示式所表示的屬性的屬性名稱。(由 LabelExtensions 定義)

101

LabelForModel(String, Object)

過載。返回一個 HTML 標籤元素和表示式所表示的屬性的屬性名稱。(由 LabelExtensions 定義)

102

ListBox(String)

過載。使用指定的 HTML 幫助器和表單欄位名稱返回一個多選選擇元素。(由 SelectExtensions 定義)

103

ListBox(String, IEnumerable<SelectListItem>)

過載。使用指定的 HTML 幫助器、表單欄位名稱和指定的列表項返回一個多選選擇元素。(由 SelectExtensions 定義)

104

ListBox(String, IEnumerable<SelectListItem>, IDictionary<String, Object>)

過載。使用指定的 HTML 幫助器、表單欄位名稱、指定的列表項和指定的 HTML 屬性返回一個多選選擇元素。(由 SelectExtensions 定義)

105

ListBox(String, IEnumerable<SelectListItem>, Object)

過載。使用指定的 HTML 幫助器、表單欄位名稱和指定的列表項返回一個多選選擇元素。(由 SelectExtensions 定義)

106

Name(String)

獲取表示式所表示的物件的完整 HTML 欄位名稱。(由 NameExtensions 定義)

107

NameForModel()

獲取表示式所表示的物件的完整 HTML 欄位名稱。(由 NameExtensions 定義。)

108

Partial(String)

過載。將指定的區域性檢視呈現為 HTML 編碼字串。(由 PartialExtensions 定義)

109

Partial(String, Object)

過載。將指定的區域性檢視呈現為 HTML 編碼字串。(由 PartialExtensions 定義)

110

Partial(String, Object, ViewDataDictionary)

過載。將指定的區域性檢視呈現為 HTML 編碼字串。(由 PartialExtensions 定義)

111

Partial(String, ViewDataDictionary)

過載。將指定的區域性檢視呈現為 HTML 編碼字串。(由 PartialExtensions 定義)

112

Password(String)

過載。使用指定的 HTML 幫助器和表單欄位名稱返回一個密碼輸入元素。(由 InputExtensions 定義)

113

Password(String, Object)

過載。使用指定的 HTML 幫助器、表單欄位名稱和值返回一個密碼輸入元素。(由 InputExtensions 定義)

114

Password(String, Object, IDictionary<String, Object>)

過載。使用指定的 HTML 幫助器、表單欄位名稱、值和 HTML 屬性返回一個密碼輸入元素。(由 InputExtensions 定義)

115

Password(String, Object, Object)

過載。使用指定的 HTML 幫助器、表單欄位名稱、值和 HTML 屬性返回一個密碼輸入元素。(由 InputExtensions 定義)

116

RadioButton(String, Object)

過載。返回一個用於呈現互斥選項的單選按鈕輸入元素。(由 InputExtensions 定義)

117

RadioButton(String, Object, Boolean)

過載。返回一個用於呈現互斥選項的單選按鈕輸入元素。(由 InputExtensions 定義)

118

RadioButton(String, Object, Boolean, IDictionary<String, Object>)

過載。返回一個用於呈現互斥選項的單選按鈕輸入元素。(由 InputExtensions 定義)

119

RadioButton(String, Object, Boolean, Object)

過載。返回一個用於呈現互斥選項的單選按鈕輸入元素。(由 InputExtensions 定義)

120

RadioButton(String, Object, IDictionary<String, Object>)

過載。返回一個用於呈現互斥選項的單選按鈕輸入元素。(由 InputExtensions 定義)

121

RadioButton(String, Object, Object)

過載。返回一個用於呈現互斥選項的單選按鈕輸入元素。(由 InputExtensions 定義)

122

RenderAction(String)

過載。呼叫指定的子操作方法,並將結果內聯呈現到父檢視中。(由 ChildActionExtensions 定義)

123

RenderAction(String, Object)

過載。使用指定的引數呼叫指定的子操作方法,並將結果內聯呈現到父檢視中。(由 ChildActionExtensions 定義)

124

RenderAction(String, RouteValueDictionary)

過載。使用指定的引數呼叫指定的子操作方法,並將結果內聯呈現到父檢視中。(由 ChildActionExtensions 定義)

125

RenderAction(String, String)

過載。使用指定的控制器名稱呼叫指定的子操作方法,並將結果內聯呈現到父檢視中。(由 ChildActionExtensions 定義)

126

RenderAction(String, String, Object)

過載。使用指定的引數和控制器名稱呼叫指定的子操作方法,並將結果內聯呈現到父檢視中。(由 ChildActionExtensions 定義)

127

RenderAction(String, String, RouteValueDictionary)

過載。使用指定的引數和控制器名稱呼叫指定的子操作方法,並將結果內聯呈現到父檢視中。(由 ChildActionExtensions 定義)

128

RenderPartial(String)

過載。使用指定的 HTML 幫助器呈現指定的區域性檢視。(由 RenderPartialExtensions 定義)

129

RenderPartial(String, Object)

過載。呈現指定的區域性檢視,並將其傳遞當前 ViewDataDictionary 物件的副本,但 Model 屬性設定為指定的模型。(由 RenderPartialExtensions 定義)

130

RenderPartial(String, Object, ViewDataDictionary)

過載。呈現指定的區域性檢視,用指定的 ViewDataDictionary 物件替換區域性檢視的 ViewData 屬性,並將檢視資料的 Model 屬性設定為指定的模型。(由 RenderPartialExtensions 定義)

131

RenderPartial(String, ViewDataDictionary)

過載。呈現指定的區域性檢視,用指定的 ViewDataDictionary 物件替換其 ViewData 屬性。(由 RenderPartialExtensions 定義)

132

RouteLink(String, Object)

過載。(由 LinkExtensions 定義)

133

RouteLink(String, Object, Object)

過載。(由 LinkExtensions 定義)

134

RouteLink(String, RouteValueDictionary)

過載。(由 LinkExtensions 定義)

135

RouteLink(String, RouteValueDictionary, IDictionary<String, Object>)

過載。(由 LinkExtensions 定義)

136

RouteLink(String, String)

過載。(由 LinkExtensions 定義)

137

RouteLink(String, String, Object)

過載。(由 LinkExtensions 定義)

138

RouteLink(String, String, Object, Object)

過載。(由 LinkExtensions 定義)

139

RouteLink(String, String, RouteValueDictionary)

過載。(由 LinkExtensions 定義)

140

RouteLink(String, String, RouteValueDictionary, IDictionary<String, Object>)

過載。(由 LinkExtensions 定義)

141

RouteLink(String, String, String, String, String, Object, Object)

過載。(由 LinkExtensions 定義)

142

RouteLink(String, String, String, String, String, RouteValueDictionary, IDictionary<String, Object>)

過載。(由 LinkExtensions 定義)

143

TextArea(String)

過載。使用指定的 HTML 幫助器和表單欄位名稱返回指定的文字區域元素。(由 TextAreaExtensions 定義。)

144

TextArea(String, IDictionary<String, Object>)

過載。使用指定的 HTML 幫助器、表單欄位名稱和指定的 HTML 屬性返回指定的文字區域元素。(由 TextAreaExtensions 定義)

145

TextArea(String, Object)

過載。使用指定的 HTML 幫助器和 HTML 屬性返回指定的文字區域元素。(由 TextAreaExtensions 定義)

146

TextArea(String, String)

過載。使用指定的 HTML 幫助器、表單欄位名稱和文字內容返回指定的文字區域元素。(由 TextAreaExtensions 定義)

147

TextArea(String, String, IDictionary<String, Object>)

過載。使用指定的 HTML 幫助器、表單欄位名稱、文字內容和指定的 HTML 屬性返回指定的文字區域元素。(由 TextAreaExtensions 定義)

148

TextArea(String, String, Int32, Int32, IDictionary<String, Object>)

過載。使用指定的 HTML 幫助器、表單欄位名稱、文字內容、行數和列數以及指定的 HTML 屬性返回指定的文字區域元素。(由 TextAreaExtensions 定義)

149

TextArea(String, String, Int32, Int32, Object)

過載。使用指定的 HTML 幫助器、表單欄位名稱、文字內容、行數和列數以及指定的 HTML 屬性返回指定的文字區域元素。(由 TextAreaExtensions 定義)

150

TextArea(String, String, Object)

過載。使用指定的 HTML 幫助器、表單欄位名稱、文字內容和指定的 HTML 屬性返回指定的文字區域元素。(由 TextAreaExtensions 定義)

151

TextBox(String)

過載。使用指定的 HTML 幫助器和表單欄位名稱返回一個文字輸入元素。(由 InputExtensions 定義)

152

TextBox(String, Object)

過載。使用指定的 HTML 幫助器、表單欄位名稱和值返回一個文字輸入元素。(由 InputExtensions 定義)

153

TextBox(String, Object, IDictionary<String, Object>)

過載。使用指定的 HTML 幫助器、表單欄位名稱、值和 HTML 屬性返回一個文字輸入元素。(由 InputExtensions 定義)

154

TextBox(String, Object, Object)

過載。使用指定的 HTML 幫助器、表單欄位名稱、值和 HTML 屬性返回一個文字輸入元素。(由 InputExtensions 定義)

155

TextBox(String, Object, String)

過載。返回一個文字輸入元素。(由 InputExtensions 定義)

156

TextBox(String, Object, String, IDictionary<String, Object>)

過載。返回一個文字輸入元素。(由 InputExtensions 定義)

157

TextBox(String, Object, String, Object)

過載。返回一個文字輸入元素。(由 InputExtensions 定義)

158

Validate(String)

檢索指定模型的驗證元資料,並將每個規則應用於資料欄位。(由 ValidationExtensions 定義)

159

ValidationMessage(String)

過載。如果 ModelStateDictionary 物件中指定欄位存在錯誤,則顯示驗證訊息。(由 ValidationExtensions 定義)

160

ValidationMessage(String, IDictionary<String, Object>)

過載。如果 ModelStateDictionary 物件中指定欄位存在錯誤,則顯示驗證訊息。(由 ValidationExtensions 定義。)

161

ValidationMessage(String, IDictionary<String, Object>, String)

過載。如果 ModelStateDictionary 物件中指定條目存在錯誤,則顯示驗證訊息。(由 ValidationExtensions 定義)

162

ValidationMessage(String, Object)

過載。如果 ModelStateDictionary 物件中指定欄位存在錯誤,則顯示驗證訊息。(由 ValidationExtensions 定義)

163

ValidationMessage(String, Object, String)

過載。如果 ModelStateDictionary 物件中指定條目存在錯誤,則顯示驗證訊息。(由 ValidationExtensions 定義)

164

ValidationMessage(String, String)

過載。如果 ModelStateDictionary 物件中指定欄位存在錯誤,則顯示驗證訊息。(由 ValidationExtensions 定義)

165

ValidationMessage(String, String, IDictionary<String, Object>)

過載。如果 ModelStateDictionary 物件中指定欄位存在錯誤,則顯示驗證訊息。(由 ValidationExtensions 定義)

166

ValidationMessage(String, String, IDictionary<String, Object>, String)

過載。如果 ModelStateDictionary 物件中指定條目存在錯誤,則顯示驗證訊息。(由 ValidationExtensions 定義)

167

ValidationMessage(String, String, Object)

過載。如果ModelStateDictionary物件中指定欄位存在錯誤,則顯示驗證訊息。(由ValidationExtensions定義)

168

ValidationMessage(String, String, Object, String)

過載。如果 ModelStateDictionary 物件中指定條目存在錯誤,則顯示驗證訊息。(由 ValidationExtensions 定義)

169

ValidationMessage(String, String, String)

過載。如果 ModelStateDictionary 物件中指定條目存在錯誤,則顯示驗證訊息。(由 ValidationExtensions 定義)

170

ValidationSummary()

過載。返回ModelStateDictionary物件中驗證訊息的無序列表(ul元素)。(由ValidationExtensions定義)

171

ValidationSummary(Boolean)

過載。返回ModelStateDictionary物件中驗證訊息的無序列表(ul元素),並可以選擇僅顯示模型級別的錯誤。(由ValidationExtensions定義)

172

ValidationSummary(Boolean, String)

過載。返回ModelStateDictionary物件中驗證訊息的無序列表(ul元素),並可以選擇僅顯示模型級別的錯誤。(由ValidationExtensions定義)

173

ValidationSummary(Boolean, String, IDictionary<String, Object>)

過載。返回ModelStateDictionary物件中驗證訊息的無序列表(ul元素),並可以選擇僅顯示模型級別的錯誤。(由ValidationExtensions定義)

174

ValidationSummary(Boolean, String, IDictionary<String, Object>, String)

過載。(由ValidationExtensions定義)

175

ValidationSummary(Boolean, String, Object)

過載。返回ModelStateDictionary物件中驗證訊息的無序列表(ul元素),並可以選擇僅顯示模型級別的錯誤。(由ValidationExtensions定義)

176

ValidationSummary(Boolean, String, Object, String)

過載。(由ValidationExtensions定義)

177

ValidationSummary(Boolean, String, String)

過載。(由ValidationExtensions定義)

178

ValidationSummary(String)

過載。返回ModelStateDictionary物件中驗證訊息的無序列表(ul元素)。(由ValidationExtensions定義)

179

ValidationSummary(String, IDictionary<String, Object>)

過載。返回ModelStateDictionary物件中驗證訊息的無序列表(ul元素)。(由ValidationExtensions定義)

180

ValidationSummary(String, IDictionary<String, Object>, String)

過載。(由ValidationExtensions定義)

181

ValidationSummary(String, Object)

過載。返回ModelStateDictionary物件中驗證訊息的無序列表(ul元素)。(由ValidationExtensions定義)

182

ValidationSummary(String, Object, String)

過載。(由ValidationExtensions定義)

183

ValidationSummary(String, String)

過載。(由ValidationExtensions定義)

184

Value(String)

過載。提供一種機制來建立與ASP.NET MVC模型繫結器和模板相容的自定義HTML標記。(由ValueExtensions定義)

185

Value(String, String)

過載。提供一種機制來建立與ASP.NET MVC模型繫結器和模板相容的自定義HTML標記。(由ValueExtensions定義)

186

ValueForModel()

過載。提供一種機制來建立與ASP.NET MVC模型繫結器和模板相容的自定義HTML標記。(由ValueExtensions定義)

187

ValueForModel(String)

過載。提供一種機制來建立與ASP.NET MVC模型繫結器和模板相容的自定義HTML標記。(由ValueExtensions定義)

如果您檢視上一章中從EmployeeController索引操作生成的檢視,您將看到許多以Html開頭的操作,例如Html.ActionLinkHtml.DisplayNameFor等,如下面的程式碼所示。

@model IEnumerable<MVCSimpleApp.Models.Employee>
@{
   Layout = null;
} 

<!DOCTYPE html>
<html>
   <head>
      <meta name = "viewport" content = "width = device-width" />
      <title>Index</title>
   </head>
	
   <body>
      <p>
         @Html.ActionLink("Create New", "Create")
      </p>
		
      <table class = "table">
         <tr>
            <th>
               @Html.DisplayNameFor(model => model.Name)
            </th>
				
            <th>
               @Html.DisplayNameFor(model => model.JoiningDate)
            </th>
				
            <th>
               @Html.DisplayNameFor(model => model.Age)
            </th>
				
            <th></th>
         </tr>
			
         @foreach (var item in Model) {
            <tr>
               <td>
                  @Html.DisplayFor(modelItem => item.Name)
               </td>
					
               <td>
                  @Html.DisplayFor(modelItem => item.JoiningDate)
               </td>
					
               <td>
                  @Html.DisplayFor(modelItem => item.Age)
               </td>
					
               <td>
                  @Html.ActionLink("Edit", "Edit", new { id = item.ID }) |
                  @Html.ActionLink("Details", "Details", new { id = item.ID }) |
                  @Html.ActionLink("Delete", "Delete", new { id = item.ID })
               </td>
            </tr>
         }
			
      </table>
   </body>
</html>

此HTML是一個我們從ViewPage基類繼承的屬性。因此,它在我們所有的檢視中都可用,並且它返回一個名為HTML Helper的型別的例項。

讓我們看一個簡單的示例,在該示例中,我們將允許使用者編輯員工。因此,此編輯操作將使用大量不同的HTML Helper。

如果您檢視上面的程式碼,您將在最後看到以下HTML Helper方法

@Html.ActionLink("Edit", "Edit", new { id = item.ID })

在ActionLink幫助器中,第一個引數是連結“Edit”,第二個引數是控制器中的操作方法,也是“Edit”,第三個引數ID是您要編輯的任何特定員工的ID。

讓我們透過新增一個靜態列表並使用以下程式碼更改索引操作來更改EmployeeController類。

public static List<Employee> empList = new List<Employee>{
   new Employee{
      ID = 1,
      Name = "Allan",
      JoiningDate = DateTime.Parse(DateTime.Today.ToString()),
      Age = 23
   },
	
   new Employee{
      ID = 2,
      Name = "Carson",
      JoiningDate = DateTime.Parse(DateTime.Today.ToString()),
      Age = 45
   },
	
   new Employee{
      ID = 3,
      Name = "Carson",
      JoiningDate = DateTime.Parse(DateTime.Today.ToString()),
      Age = 37
   },
	
   new Employee{
      ID = 4,
      Name = "Laura",
      JoiningDate = DateTime.Parse(DateTime.Today.ToString()),
      Age = 26
   },
	
};

public ActionResult Index(){
   var employees = from e in empList
   orderby e.ID
   select e;
   return View(employees);
}

讓我們更新Edit操作。您將看到兩個Edit操作,一個用於GET,另一個用於POST。讓我們更新用於Get的Edit操作,它在引數中只有Id,如下面的程式碼所示。

// GET: Employee/Edit/5
public ActionResult Edit(int id){
   List<Employee> empList = GetEmployeeList();
   var employee = empList.Single(m => m.ID == id);
   return View(employee);
}

現在,我們知道我們有Edit操作,但我們沒有這些操作的任何檢視。因此,我們也需要新增一個檢視。為此,右鍵單擊Edit操作並選擇新增檢視。

Right-click Edit Action

您將看到檢視的預設名稱。從模板下拉列表中選擇Edit,從模型類下拉列表中選擇Employee。

以下是Edit檢視中的預設實現。

@model MVCSimpleApp.Models.Employee
@{
   Layout = null;
}

<!DOCTYPE html>
<html>
   <head>
      <meta name = "viewport" content = "width = device-width" />
      <title>Edit</title>
   </head>
	
   <body>
      @using (Html.BeginForm()){
         @Html.AntiForgeryToken()
         <div class = "form-horizontal">
            <h4>Employee</h4>
            <hr />
            @Html.ValidationSummary(
               true, "", new { @class = "text-danger" })
					
            @Html.HiddenFor(model => model.ID)
				
            <div class = "form-group">
               @Html.LabelFor(
                  model => model.Name, htmlAttributes: new{
                     @class = "control-label col-md-2" })
							
               <div class = "col-md-10">
                  @Html.EditorFor(model => model.Name, new{
                     htmlAttributes = new {
                        @class = "form-control" } })
								
                  @Html.ValidationMessageFor(model => model.Name, "", new{
                        @class = "text-danger" })
               </div>
					
            </div>
				
            <div class = "form-group">
               @Html.LabelFor(
                  model => model.JoiningDate, htmlAttributes: new{
                     @class = "control-label col-md-2" })
							
               <div class = "col-md-10">
                  @Html.EditorFor(
                     model => model.JoiningDate, new{
                        htmlAttributes = new{ @class = "form-control" } })
								
                  @Html.ValidationMessageFor(
                     model => model.JoiningDate, "", new{
                        @class = "text-danger" })
               </div>
					
            </div>
				
            <div class = "form-group">
               @Html.LabelFor(
                  model => model.Age, htmlAttributes: new{
                     @class = "control-label col-md-2" })
							
               <div class = "col-md-10">
                  @Html.EditorFor(
                     model => model.Age, new{
                        htmlAttributes = new{ @class = "form-control" } })
								
                  @Html.ValidationMessageFor(
                     model => model.Age, "", new{
                        @class = "text-danger" })
               </div>
					
            </div>
				
            <div class = "form-group">
               <div class = "col-md-offset-2 col-md-10">
                  <input type = "submit" value = "Save" class = "btn btn-default"/>
               </div>
            </div>
				
         </div>
      }
		
      <div>
         @Html.ActionLink("Back to List", "Index")
      </div>
		
   </body>
</html>

正如您所看到的,使用了許多幫助器方法。因此,這裡“HTML.BeginForm”編寫了一個開始的表單標籤。它還確保當用戶單擊“儲存”按鈕時,方法將為“Post”。

Html.BeginForm非常有用,因為它允許您更改URL、更改方法等。

在上面的程式碼中,您將看到另一個HTML幫助器,即“@HTML.HiddenFor”,它發出隱藏欄位。

MVC框架足夠智慧,可以識別出此ID欄位在模型類中已提及,因此需要防止其被編輯,這就是為什麼它被標記為隱藏的原因。

Html.LabelFor HTML Helper在螢幕上建立標籤。如果在進行更改時輸入錯誤,Html.ValidationMessageFor幫助器將顯示正確的錯誤訊息。

我們還需要更改POST的Edit操作,因為一旦您更新了員工,它將呼叫此操作。

// POST: Employee/Edit/5
[HttpPost]
public ActionResult Edit(int id, FormCollection collection){
   try{
      var employee = empList.Single(m => m.ID == id);
      if (TryUpdateModel(employee)){
         //To Do:- database code
         return RedirectToAction("Index");
      }
      return View(employee);
   }catch{
      return View();
   }
}

讓我們執行此應用程式並請求以下URL https://:63004/employee。您將收到以下輸出。

Localhost Employee

單擊任何特定員工的編輯連結,例如單擊Allan的編輯連結。您將看到以下檢視。

Click Particular Employee

讓我們將年齡從23更改為29並單擊“儲存”按鈕,然後您將在索引檢視上看到更新的年齡。

Updated Age Index View
廣告

© . All rights reserved.