2014-10-09 41 views
0

簡單的問題;何時使用自定義HTML助手Asp.net MVC

什麼時候應該使用自定義HTML助手。我們是否應該(正如MVC開發人員所預期的那樣)爲所有視圖中重用的所有標記/邏輯實施擴展方法?

我對此很好奇,因爲我們目前有一個需要重構的中型項目。不同的實習生一直在努力研究這個問題,並且有時間進行清理。

+2

請參考[我們應該什麼時候使用Html Helpers,Razor Helpers或Partial Views?](http://stackoverflow.com/questions/18046236) – 2014-10-09 13:52:23

+0

[我們什麼時候應該使用Html Helpers,Razor Helpers或Partial Views? ](http://stackoverflow.com/questions/18046236/when-should-we-use-html-helpers-razor-helpers-or-partial-views) – Luizgrs 2014-10-09 13:56:59

回答

2

使用Html Helper呈現Html元素。該元素可能包含內部元素,但您的幫助者應該指最外層的元素。讓我舉一個例子。再說了,你要渲染某些特定屬性的圖像按鈕,讓您的圖片按鈕,看起來就像這樣:

<button title="my button" onclick="onClickFunctionName()"> 
    <img src="...." /> 
</button> 

所以,一個HTML輔助用以下簽名會非常有用:

@Html.ImageButton(title:"my button", onclickFunctionName:"onClickFunctionName", imageSource:"....") 

與圖像按鈕相同,您可以封裝使用Html Helper創建表。

如果你想封裝一些部分佈局的HTML標記,那麼你應該使用部分視圖。例如,局部視圖可用於呈現帶有用戶名和密碼的登錄框和記住我複選框。在這種情況下,HTML助手不會是一個好主意。

1

在希望鏈接使用路由配置的情況下。您使用HTML屬性。它是IHtmlHelper的實例,其中包含用於生成html片段的方法。您可以手動鍵入它們,但是此html屬性具有在您的應用程序中使用某些元數據或配置的幕後邏輯。另外,HTML Helpers知道MVC框架中的內置約定。

相關問題