天天看点

asp.net label标签中写html标签,label或@html.Label ASP.net MVC 4

Tim Medora..

13

对于您的标签代码段,它并不重要.我会选择更简单的语法(纯HTML).

大多数辅助方法也不允许您包围另一个元素.选择使用/不使用时,这可能是一个考虑因素.

强类型等价物

但是,值得注意的是,您使用@Html.[Element]For()获得重要功能的方法.请注意方法名称末尾的"For".

例:

@Html.TextBoxFor( o => o.FirstName )

这将根据对象层次结构(对模型绑定至关重要)处理ID /名称创建.它还将添加不显眼的验证属性.这些方法将Expression作为参数,它引用模型中的属性.这个属性的元数据是由MVC框架获得的,因此它"知道"更多关于属性的信息,而不是它的字符串 - 参数对应物.

它还允许您以强类型方式处理UI代码.Visual Studio将突出显示语法错误,而使用字符串则无法突出显示语法错误.视图也可以选择与解决方案一起编译,允许进行额外的编译时检查.

其他考虑因素

有时,HTML帮助程序方法还会执行其他有用的任务,例如,Html.Checkbox并且Html.CheckboxFor还会创建一个隐藏字段以与复选框一起使用.另一个例子是路由感知的与URL相关的方法(例如用于超链接).

my link

@Html.ActionLink( "my link", "foo", "bar", new{ id=123 } )

my link

使用纯HTML和代码时,只要呈现视图就必须执行代码,这会带来轻微的性能优势,尽管这不应该是决定因素.