首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Html.Textbox VS Html.TextboxFor

Html.Textbox VS Html.TextboxFor
EN

Stack Overflow用户
提问于 2011-05-06 16:04:59
回答 4查看 179.2K关注 0票数 95

Html.Textbox和Html.TextboxFor有什么区别?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-05-06 16:15:55

最终,它们都产生相同的超文本标记语言,但是Html.TextBoxFor()是强类型的,而Html.TextBox不是。

代码语言:javascript
复制
1:  @Html.TextBox("Name")
2:  Html.TextBoxFor(m => m.Name)

都会产生

代码语言:javascript
复制
<input id="Name" name="Name" type="text" />

那么,这在使用方面意味着什么呢?

通常有两件事:

  1. 键入的TextBoxFor将为您生成输入名称。这通常只是属性名,但是对于复杂类型的属性可以包含下划线,例如'customer_name'
  2. Using,类型化的TextBoxFor版本将允许您使用编译时检查。因此,如果您更改了模型,则可以检查视图中是否有任何错误。

通常认为,使用added in MVC2的强类型版本的HtmlHelpers是更好的做法。

票数 119
EN

Stack Overflow用户

发布于 2011-05-06 16:08:44

TextBoxFor是MVC2中引入的一个较新的MVC输入扩展。

新的强类型扩展的主要好处是在编译时而不是运行时显示任何错误/警告。

请参阅此页面。

http://weblogs.asp.net/scottgu/archive/2010/01/10/asp-net-mvc-2-strongly-typed-html-helpers.aspx

票数 16
EN

Stack Overflow用户

发布于 2011-05-06 16:13:58

主要区别在于Textbox不是强类型的。TextboxFor接受一个lambda作为参数,该参数告诉helper模型的with元素要在类型化视图中使用。

您可以对两者执行相同的操作,但应尽可能使用类型化视图和TextboxFor。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5908523

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档