21

HtmlHelper拡張メソッドを使用することが推奨されるのはいつか、部分ビューを使用するのはいつか知りたいですか?多くの場合、それらは同等に適格であるように思われます。

4

4 に答える 4

17

HtmlHelpers - HTML の一部 (カスタム リンク、ボタン、入力など)

PartialViews - より複雑なもの (フォーム、ヘッダー、フッター、リスト項目など)

于 2009-05-20T18:36:28.210 に答える
15

個人的には、部分的なビューは、再利用可能な機能要素のグループとして機能するasp.netのユーザーコントロールにほぼ似ていると思います。たとえば、サイト全体に表示される可能性のあるログインコントロールボックスを作成する必要がある場合は、部分的な表示の方が適しています。さらに、部分ビューの場合は、実際には独自のレンダリング/処理戦略を備えた自己完結型です(独自の状態もある場合があります)

一方、htmlhelperは、コーディング時間を節約して維持するための単なるツールであり、コードの可読性を向上させます。

于 2009-05-20T13:21:51.340 に答える
11

部分ビューよりも HTML ヘルパー (単なるメソッド) のテストを作成する方がはるかに簡単です。viewdata の内容に基づいて異なる出力など、ロジックを持つものを作成している場合は、ヘルパーを使用してその周りのテストを行います。実際のロジックを使用せずに再利用可能なコンテンツを作成している場合は、おそらく部分ビューを使用します。

于 2009-05-27T13:22:18.187 に答える
1

追加するだけです:既存のhtmlhelperが仕事をすることができない場合、ユーザーコントロールの要素をレンダリングするためにhtmlhelperを使用します...それをルールとして入れましょう:

ユーザーコントロール(部分ビュー)の代わりにhtmlhelperを使用するシナリオは悪いアプローチであり、ページ/ユーザーコントロールのアトム要素をレンダリングするためのヘルパーとしてhtmlhelperを使用するシナリオは良いアプローチです

于 2009-05-20T14:30:52.433 に答える