我刚开始学习ASP.NET MVC,我遇到了一个问题。我正在尝试确定是否应该使用HtmlHelper来创建客户端控件,或者我是否应该使用自己的控件。我的直觉只是倾向于自己滚动,因为它让我完全控制 - 并使用jQuery来装饰和添加交叉浏览器功能。但后来我可以看到使用HtmlHelper进行各种复杂控制的好处,这些控件可能涉及分页等。
我正在寻找有关何时使用HtmlHelper更好的经验,以及何时最好自己动手。
答案 0 :(得分:3)
他们添加到HtmlHelper的次数越多,我自己就会越多地使用它们。
看一下ScottGu的这些帖子: MVC Preview 5 和 MVC Beta
如果您不使用输入框的HtmlHelper版本,则无法获得良好的免费验证。
另外,我不确定是什么阻止你用你需要的任何东西来装饰HtmlHelper控件以使它们可用于jQuery。
您可以使用htmlAttributes重载添加所需的任何属性,如下所示:
<%= Html.TextBox("LastName", ViewData.Model.LastName, new { @class = "required" })%>
我所谈论的有趣部分是你在那里看到的匿名对象(新{@class =“required”})。
你可以在你需要的地方放置任何东西,它会被打到控件的属性部分。
祝你好运!答案 1 :(得分:2)
对于简单的案例来说,滚动自己很容易,但是你希望它们变得越“神奇”越难。
幸运的是,你可以按照自己的方式建立。
但是,提供的HtmlHelper控件非常广泛。它们将提供您需要的大部分内容。请注意过载,因为很容易意外地为您的呼叫使用错误的过载。
答案 2 :(得分:1)
你需要问自己的真正问题是,你是否需要完全控制,你是否需要一个可以在最快的时间内完成工作的工作控制(这并不意味着你必须牺牲质量)。 / p>
如果速度是一个问题,请使用HtmlHelper,如果你想在控制区玩,那么就自己动手。如果您不确定,请使用HtmlHelper并保存自制的控件,以便进行业余时间实验。
答案 3 :(得分:0)