2013-08-06 65 views
-1

如何調用此函數?如何調用以下功能?

public static HtmlString DropdownForEnum<TModel>(this HtmlHelper<TModel> helper, Type type, 
    string name, string optionLabel, object htmlAttributes) 
+1

什麼是有用的評論 – bman

回答

5

一個頁面(使用剃刀語法)內部:

@Html.DropDownForEnum(typeof(enumToDropDown), name: "Foo", optionLable: "Bar", htmlAttributes: null) 
+0

謝謝你給我一個直接的答案,而不是撲。 – bman

1

這是的HtmlHelperextension方法。你可以閱讀更多關於它here

你可以稱它爲艾克這個

yourhtmlHelperObject.DropdownForEnum(someType,someName,label,attributes); 
2

的「本」的論點部分表示,我認爲這是一個「擴展方法」 - 這確實一個對象上的一些公共操作基本上是一個輔助方法,但可以被稱爲是該對象的一種方法。

HtmlHelper<Model> helper; 
Type type; 
String name; 
String optionLabel; 
Object htmlAttributes; 

helper.DropdownForEnum(type, name, optionLabel, htmlAttributes); 
// or, the standard way for calling a static: 
NameOfClassWhereYouFoundMethod.DropdownForEnum(helper, type, name, optionLabel, htmlAttributes); 
+0

除了該函數有一個靜態聲明,所以它不會在HtmlHelper的一個實例上調用。 –

+0

@MikeCorcoran所有擴展方法都是靜態聲明的,因爲HtmlHelper的實例被指定爲參數。 (這個HtmlHelper ...) – Katana314

+0

呃,brainfart。你是對的,我想只有外部類聲明必須是靜態的 –