0

プロジェクトで再利用可能な部分ビューをどのように使用すべきかについて、賛否両論について質問があります。

最初の例では、すべてのビュー間で使用されるレイアウトがあります。レイアウトには、を使用して呼び出される部分ビューがありますHtml.RenderAction("Index", "Header")。このヘッダーは、ユーザーがログインしているかどうかに基づいて変化し、すべてのビューでレンダリングされます。

2 番目の例では、すべてのビュー間で使用される静的レイアウトがあります。ただし、このレイアウトでは、呼び出される部分ビューはありません。ヘッダー部分ビューは各ビューで呼び出され、基本的に最初の例と同じことを行います (ユーザーがログインしているかどうかなどに基づいて変化します)。

どちらのアプローチが優れているか、どちらかが正しい方法ですか? それぞれの長所と短所は?

4

1 に答える 1

1

背後にある主なアイデアの 1 つは、コードを再利用しないことです。したがって、これを念頭に置いて、ファイルにHeaderコードを含める必要があり_Layoutます。このようにして、 every で再入力されることはありませんView。それを削除したり、ルート値を追加したりする必要がある場合は、それを持つ every を更新する必要はありませんView

この例は_LogOnPartial、デフォルト プロジェクトにある です。_Layoutによって呼び出され@Html.Partial("_LogOnPartial")、ビューにはまたは_LogOnPartialを表示する論理ステートメントが含まれています。LogOn or RegisterWelcome back...

于 2012-09-09T16:03:19.470 に答える