ASPセクションと部分ビューについて質問があります。
どちらを使用するメリットは何ですか?
メニューがあれば、セクションとしてだけでなく、部分的なビューとしても利用できることをゲストに感謝します。
違いは何ですか?
partial viewは、複数の場所で使用されている、または別のファイルに分割されている(たとえば、読みやすくするため)いくつかのビューコンポーネント(オプションで独自のモデル)がある場合に使用されます。 。
セクションはマスターページに配置され、個々のビューがそれらの領域にデータを入力できるようにします-それらは必須またはオプションです。 2つを比較すると、目的と目的が異なるため、実際には賛否両論はありません。
メニューの例として、(コレクションから)メニューを構築するマークアップがあり、それを多くの場所で使用したい場合は、部分ビューが最適なオプションになります。
ページ上に単一のメニューがあり、その内容がページに基づいて変化する場合は、セクションを使用して、ビューにメニューを設定するよう要求できます(パーシャルを使用してそのメニューセクションに設定することもできます)。
部分ビューはモデルバインディングでうまく機能します。提供されたモデルに「バインド」するように、部分ビューを「タイプバインド」できます。
@Html.Partial("_NavigationMenu", Model.Navigation)
セクションは基本的に「プレースホルダー」または「リテラル」に似ており、「親」で定義された適切な場所のリージョン内に配置されたコードを出力します。
@section JavaScript{
//some code to be included on the "parent" view
}
一般に、さまざまなアドホックスクリプト要件またはCSSのセクションと、フォーマット(拡張機能も使用できます)/メニュー/ナビゲーションなどのDOM要素の部分ビューを使用します。古い「.ascx」コントロールと同じ考え方です。 。
また:
部分ビューはセクションの宣言を(設計上)尊重しないため、使用できません。