2013-02-26 15 views
6

私の問題を解決するためにhtmlHelperを使うべきか部分的な視点を使うべきかを決めることができません。htmlHelper対パーシャルビュー

私は、次のコードを再利用したい:

<div style="width: 500px; float: left;"> 
    <div class="box effect2"> 
    <span><a href="@Url.Action("someMethod", "somController")"> 
     <img src="@Url.Content("~someurl)" /></a></span> 
    </div> 
</div> 

HREFと画像ソースはパラメータであろう。

どのような方法が最適ですか?

答えて

9

マークアップが多い場合は部分表示を使用してください。 HTMLの小さな部分だけを生成するには、HTMLヘルパーを使用する必要があります。この特定のケースでは、あなたは本当に限界にあり、どちらの方法もうまくいくでしょう。この特定の例のために好むものを使用してください。おそらくカスタムHTMLヘルパーは、アセンブリに組み込んだ場合、さまざまなアプリケーションで再利用できる非常に一般的なウィジェットと思われるので、ここではこのHTMLヘルパーを使用します。

+0

ok、情報ありがとうございます。私はあなたの推薦に従ってHTMLヘルパーを作成しました。 – Sam

+0

あなたのコードがAJAX経由で呼び出されるかどうかは、基準になるかもしれません。 – mediafreakch

+0

@DarinDimitrov私はパフォーマンス面もここで考慮する必要があると思います。パーシャルビューを使用する場合、ControllerFactoryはパーシャルビューのコントローラを作成し(パーシャルビューがあれば)、時間がかかります。 ControllerFactoryはまず部分ビューの位置を取得します(ただし部分ビューの位置はキャッシュされますが..)。小さなオブジェクトではないControllerインスタンスを作成し、メモリを消費します。部分ビューにコントローラ(例えば、RenderPartial)がない場合、部分ビューを検索する必要があります。したがって、私はHtmlHelpersを使う方が良いと思います。どう思いますか? – sotn

関連する問題