1. ホーム
  2. asp.net-mvc

[解決済み] Html.Textbox VS Html.TextboxFor

2023-01-31 19:33:26

質問

Html.TextboxとHtml.TextboxForの違いは何ですか?

どのように解決するのですか?

最終的にはどちらも同じHTMLを生成しますが Html.TextBoxFor()の場合 は強く型付けされるのに対し Html.TextBox はない。

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

がともに出ることになります。

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

では、使い方はどうなるのでしょうか?

一般的には2つです。

  1. タイプされた TextBoxFor は入力の名前を生成してくれます。これは通常プロパティ名だけですが、複雑な型のプロパティには 'customer_name' のようなアンダースコアを含めることができます。
  2. 型付き TextBoxFor バージョンを使用すると、コンパイル時のチェックを使用することができます。そのため、モデルを変更した場合、ビューにエラーがあるかどうかをチェックすることができます。

一般に、HtmlHelpersの強く型付けされたバージョンを使用することは、より良いプラクティスであるとみなされています。 で追加された .