2011-01-13 16 views
13

ASP.NET MVCプロジェクトでHTMLヘルパーを使用した後に、良いこと、ベストプラクティスまたは利益がありますか?なぜASP.NETヘルパーをASP.NET MVCで使用しますか?

私はそれらを使用しようとしていますが、私はHTMLの速度が遅く、HTMLヘルパーを使用するたびに多くの困難があることが分かりました。

他の[非専門家]の人は、ヘルパーを使って自分が何を書いているのかわからなくても、HTMLの知識を持っていても、もっと時間を費やす必要がある場合や、

私はHTMLヘルパーを使用する場合、私は速度を失う。私がHTMLを使用するときには、私はちょうどタイプし、私はそれを認識していません。しかし、ヘルパーを使って、理解するのは難しいです。

HTMLヘルパーを使用するとどうなるでしょうか?私はスピードを失うので、私は何も得られないと思う。他の人はヘルパーを使って何をしているのか理解できず、必要に応じてコードをカスタマイズできません。

なぜHTMLヘルパーを使用しますか?

答えて

5

HTMLヘルパーを使用して、ページ全体に繰り返される小さなHTMLフラグメントをカプセル化します。これらのHTMLスニペットをもう一度書くのを避けるため、ヘルパーを使用します。

リンクヘルパーをハードコーディングするのではなく、サーバー上の定義をルーティングしてサイトのURL全体を変更するだけで、単一のHTMLに触れずに変更できるため、URLなどのものを扱うときに特に便利です。ページ。

HTMLヘルパーが役に立つ別のシナリオは、フォーム入力フィールドを生成することです。この場合、自動的にポストバック時に値を処理し、関連する検証メッセージを表示することができます。 HTMLヘルパーがいなければ、ビューに書き込む必要があるスパゲッティコードを想像できますか?

+0

私は遅れて質問しています...可能な利点はHTML.TextBox/Hiddenです。私はフレキシブルにそれを使う方法を学ぶのに8時間を費やしたにちがいないはずです。、おそらくもともとは15mもあったでしょう。私たちがすでに扱っている疑似オブジェクトの数を減らすことなく、簡単にマークアップオブジェクト指向にすることを強要します。 TextBoxは、完全に機能を戻すために配置しなければならないすべての新しい{}と(オブジェクト)タイプのタグを考慮して、入力よりも重複を実際に作成するようです。しかし、私は述べた利点に同意します – gunslingor

2

私が見つけた最大の利点は、エディタとディスプレイテンプレートです。

フィールドのエディタは単純な入力ボックスを超えている場合は、テンプレートの中にそれを入れて、

<%:Html.EditorFor(m=>m.Property)%>

への呼び出しで複数のタグを置き換えることができますこれは、あなたのページであることを意味しますあなたが望むものを見つけるために多くの綿毛のようなHTMLを渡っていないので、編集がはるかに簡単です。

関連する問題