我应该坚持使用HTML帮助程序,还是只使用纯HTML?
我一直在使用HTML帮助器一段时间,并且非常喜欢使用它们。最近我开始使用Twitter Bootstrap之类的CSS框架,我发现我的标记过于复杂而无法使用标准HTML帮助程序。
当然,我仍然使用Url.Action()
来生成链接,有时候使用@Html.TextBoxFor()
或类似的简单形式,但是,例如,我找到了一些帮助,如Html.ActionLink()
或{{ 1}}只是不要削减它。
我的标记通常包含复杂的巢穴。例如,在Bootstrap中,我可能想要添加一个图标作为链接的一部分:
Using Html.BeginForm()
这在Bootstrap中很常见,我觉得HTML助手会妨碍你。我可以自己制作,但我的标记完全不同。
假设我只使用少量的HTML助手;需要的地方。这提出了另一个问题:
如果我最大限度地减少HTML帮助程序的使用,我应该完全删除它们并主要使用常规HTML来保持一致性吗?
答案 0 :(得分:5)
我同意Html标记帮助程序可以对隐藏这意味着传达它。我们都了解Html(设计师和开发人员),为什么不使用它呢? Html助手简单地将我们转换为为我们发布Html的Asp.Net控件的时代。举个例子,这两个中哪一个更清楚?
@Html.ActionLink("About this Website", "About")
或
<a href='/about'>About this website</a>
当然,第二个答案可能有更多的字符,但更清楚。
答案 1 :(得分:3)
当你必须开始用页面元素做更高级的事情时,它开始变得丑陋。我总是发现自己必须转到渲染的页面源,以确切地看到生成的方式很多次。另一个问题是当你有一个设计师尝试设置你的标记样式时,大多数人会知道html而不是razor / aspx语法。
我的建议是为任何会利用大量js libs(jquery / knockout / angular / etc)的网站做直接html。特别是表格助手。
答案 2 :(得分:2)
如果我最小化HTML帮助程序的使用,我应该放弃它们 总而言之,主要使用常规HTML来保持一致性?
不,始终使用HTML帮助程序。在复杂锚点的示例中,您仍然可以使用Url.Action
帮助程序设置其href
属性并对其他部分进行硬编码。