Warum sollte ich LabelFor
anstelle von <label>
verwenden?Warum sollte ich LabelFor in MVC verwenden?
z.
@Html.LabelFor(model => model.FirstName)
@Html.DisplayFor(model => model.FirstName)
vs
<label for="FirstName">First Name</label>
@Html.DisplayFor(model => model.FirstName)
Zusätzlich zu den oben genannten, @ p.s.w.g hat den DRY Aspekt dieser Frage bedeckt. Ich würde auch gerne wissen, ob es bei der Lokalisierung hilft. dh. Unterschiedliche Bezeichnungen basierend auf der aktuellen Spracheinstellung.
Sollte die Beziehung View - ViewModel nicht eins zu eins sein? In diesem Fall müssen Sie immer noch so oft eingeben, ob es in der Ansicht oder im ViewModel ist. – Jamie
@Jamie Es funktioniert normalerweise nicht so. Zum einen haben Sie wahrscheinlich unterschiedliche Ansichten für die Anzeige im Vergleich zur Bearbeitung der Daten. Außerdem müssen Sie wahrscheinlich an anderen Stellen in Ihrer App "LabelFor" oder "DisplayNameFor" aussortieren. –
Welchen Vorteil bietet DisplayNameFor gegenüber LabelFor? – Jamie