我剛剛開始學習ASP.NET MVC,並且遇到了一個問題。我試圖確定我是否應該使用HtmlHelper來創建客戶端控件,或者如果我應該自己推出。我的直覺是傾向於自己滾動,因爲它讓我完全控制 - 並使用jQuery來裝飾和添加交叉瀏覽功能。但是,我可以看到使用HtmlHelper的各種複雜控件的優點,可能涉及分頁等事情。我應該使用HtmlHelper還是滾動我自己的控件?
我正在尋找有關何時使用HtmlHelper以及何時更好地推出自己的體驗。
我剛剛開始學習ASP.NET MVC,並且遇到了一個問題。我試圖確定我是否應該使用HtmlHelper來創建客戶端控件,或者如果我應該自己推出。我的直覺是傾向於自己滾動,因爲它讓我完全控制 - 並使用jQuery來裝飾和添加交叉瀏覽功能。但是,我可以看到使用HtmlHelper的各種複雜控件的優點,可能涉及分頁等事情。我應該使用HtmlHelper還是滾動我自己的控件?
我正在尋找有關何時使用HtmlHelper以及何時更好地推出自己的體驗。
越多他們添加到HtmlHelper越是我最終使用他們自己。
看看這些文章ScottGu: MVC Preview 5 和 MVC Beta
如果你不使用的輸入框的HtmlHelper版本,你不會得到漂亮的,免費的驗證。
此外,我不確定是什麼阻止你用任何你需要的裝飾HtmlHelper控件來使它們適用於jQuery。
您可以添加你需要使用htmlAttributes任何屬性,超載,像這樣:
<%= Html.TextBox("LastName", ViewData.Model.LastName, new { @class = "required" })%>
對我說的是什麼,你看到有匿名對象有趣的部分(新{@class =「需要「})。
你可以把任何東西放在你需要的地方,然後它被打到控件的屬性部分。
祝你好運!
您需要問自己的真正問題是,您是否需要完全控制,您是否需要一個可以在最快時間內完成工作的工作控件(這並不意味着您必須犧牲質量)。
如果速度是一個問題,使用HtmlHelper,如果你想在控制土地上玩,然後滾動你自己的。如果您不確定,請使用HtmlHelper並保存自制控件以進行業餘時間實驗。
對於簡單的情況來說,自己做起來很容易,但是越想越「神奇」就越難。
幸運的是,你可以建立你的去。
但是,提供的HtmlHelper控件相當廣泛。他們將提供你所需要的大部分。請謹慎對待過載情況,因爲意外地爲您的通話使用錯誤的超載非常容易。
滾動你自己到底如何讓你更好地控制輸出HTML比使用HtmlHelper?當內置的擴展方法滿足我的需求時,我經常使用HtmlHelper ...當他們不添加額外的擴展方法時。我錯過了什麼全面控制的部分? – 2008-11-25 16:51:40
@勺子16 - 這可能只是我對HtmlHelper究竟是什麼/沒有經驗。我對整個asp.net mvc領域都很陌生。 – 2008-11-25 17:36:29