99 votes

Html.Zone de texte VS Html.TextboxFor

Quelle est la différence entre Html.Zone de texte et Html.TextboxFor?

123voto

David Glenn Points 12819

Finalement, ils produisent le même code HTML mais Html.TextBoxFor() est fortement typé, où, comme Html.Zone de texte n'est pas.

1:  @Html.TextBox("Name")
2:  Html.TextBoxFor(m => m.Name)

permettra à la fois de produire de l'

<input id="Name" name="Name" type="text" />

Donc, ce que cela signifie en termes d'utilisation?

Généralement deux choses:

  1. L'tapé TextBoxFor va générer vos noms d'entrée pour vous. C'est habituellement juste le nom de la propriété, mais pour les propriétés de types complexes peuvent inclure un trait de soulignement comme "customer_name'
  2. À l'aide de l'tapé TextBoxFor version vous permettra d'utiliser la compilation de la vérification. Donc, si vous changer de modèle, alors vous pouvez vérifier s'il y a des erreurs dans vos vues.

Il est généralement considéré comme une meilleure pratique pour utiliser les versions fortement typées de la HtmlHelpers qui ont été ajoutés dans MVC2.

18voto

iain Points 1034

L' TextBoxFor est une nouvelle MVC entrée extension introduit dans MVC2.

Le principal avantage de la plus récente fortement typé extensions est de montrer toutes les erreurs / avertissements lors de la compilation plutôt que de l'exécution.

Voir cette page.

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

8voto

Jonathan Points 6611

De l'OMI, la principale différence est que la zone de texte n'est pas fortement typé. TextboxFor prendre un lambda comme paramètre à dire à l'aide la à un élément du modèle à utiliser dans un typée vue.

Vous pouvez faire la même choses avec les deux, mais vous devez utiliser tapé points de vue et TextboxFor lorsque cela est possible.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X