Asp.net mvc 我应该使用Html.Label帮助程序吗?
在MVC项目中,我使用HTML.Label帮助程序,如下所示:-Asp.net mvc 我应该使用Html.Label帮助程序吗?,asp.net-mvc,html-helper,Asp.net Mvc,Html Helper,在MVC项目中,我使用HTML.Label帮助程序,如下所示:- @Html.Label("FirstName", "First Name", New With {.class = "FieldLabel"}) 哪个输出 <label class="FieldLabel" for="FirstName">First Name</label> 名字 我还得到了这个标签的相应输入 这听起来可能是一个愚蠢的问题,但是如果我只是将直接输出输入到我的视图中,而不是使用HTML
@Html.Label("FirstName", "First Name", New With {.class = "FieldLabel"})
哪个输出
<label class="FieldLabel" for="FirstName">First Name</label>
名字
我还得到了这个标签的相应输入
这听起来可能是一个愚蠢的问题,但是如果我只是将直接输出输入到我的视图中,而不是使用HTML帮助器,那么这有绝对的区别吗?那么,将HTML帮助程序用于标签有什么优点/缺点呢?HTML帮助程序旨在生成动态内容;因此,如果您的项目有这样的场景,那么这些场景是必要的 在代码中
@Html.Label("FirstName", "First Name", New With {.class = "FieldLabel"})
一切都是静态的,因此没有义务使用HTMlHelper Html.Label为名称与指定输入文本匹配的输入提供标签没有区别 对于标签之类的简单内容,我并不认为使用html帮助程序有什么好处。助手代码比实际的html长 然而,html帮助程序对于模型绑定非常有用 因此,如果我想将标签或其他表单元素绑定到ViewModel,我会使用
@Html.LabelFor(m => m.FirstName)
@Html.TextboxFor(m => m.FirstName)
这可以确保模型绑定正常工作。表单元素与必要的属性一起输出,这样当表单发布到服务器时,模型参数将在服务器端自动填充
它还确保标签链接到正确的表单元素。
@Html.labelforhelper将输出以下Html
<label for="Username">Username</label>
用户名