2011-02-04 6 views
1

WebFormsのpseudomarkupとは対照的に、実際のページマークアップに近づくという事実は、ASP.NET MVCの大きな利点の1つであると、私はよく目にします。HTMLに近いです...なぜHtmlHelperですか?

これが当てはまる場合、なぜHtmlHelperが存在するのですか?これはすべてLabelForTextBoxForのようなものは、Webフォームには<asp:Label><asp:TextBox>という疑似マークアップと同じように見えます。

私には何が欠けていますか?なぜHtmlHelperクラスがありますか?人々はそれを実生活で使用していますか?

+0

はこの現実の生活されるHTMLに近づくようにしないように選択するか選ぶことができますか? – jfar

+0

つまり、「チュートリアル」などとは対照的に、現実の人生だと思います。 –

答えて

3

HtmlHelper関数がレンダリングされた正確なマークアップを抽象化していると言うのは間違いありませんが、このビューの大きな利点は、ビューがより多くのものであることです(DRY)、カスタマイズするためには必要なパラメータを関数に渡すことができますHTMLが生成されます。

<input />タグを手動で入力するのではなく、value=<%= Model.Property %>と入力してください。Html.TextBoxForは同じものを出力するより簡潔な方法です。また、すべてのDRYアプローチと同様に、アプリケーションのすべてのテキストボックス(たとえば、新しい属性を出力する)のHTMLを変更する必要がある場合は、HtmlHelperメソッドを変更するだけです。

シンプルで軽量な部分表示のように見えますが、ちょっとした入力では一貫したHTMLを出力するように設計されています。

2

HTMLヘルパーのポイントは、退屈で反復的な<input>タグを排除することです。

HTMLのヘルパーは、サーバー側のコントロールとは異なり、生の、(かなり)予測可能なHTMLを生成します。

1

これらの作成を簡略化し、厳密に名前を付けることができます。もちろん人々はこれを使う!

1

私は答えにはまったく同意できません。私は何とかあなたに同意します。

ヘルパーは、あらかじめ作成されたカスタムコントロールとして考えることができます。コードを生成してヘルパーを利用できるようにするには、きちんとアプローチしてHTMLに近づけないようにします。

ここで重要な点は、MVCを使用するとHTMLに近づけることができますが、それだけに限定されるわけではありません。

希望のマークアップを作成した独自のヘルパーを作成し、代わりに使用することができます。一日の終わりに

、それがダウンし、あなた自身の好みに来て、あなたは

関連する問題