2012-10-03 19 views
32

私は新しいASP.NET MVC 4アプリケーションを開発中です。私は本当に "MVC"のやり方をしようとしています。特に、私はRazorビューエンジンの使用に興味があります。私はウェブフォームの背景から来ているので、私の質問は扱いにくいかもしれません。ASP.NET MVC 4に相当するユーザーコントロール

MVCのユーザーコントロールと同等のものがあるかどうかを確認しようとしていますか?もしそうなら、彼らは何と呼ばれていますか?そうでない場合は、MVCで再利用可能なコンポーネントを作成するための推奨方法は何ですか?

答えて

11

MVCで再利用可能なHTMLコンポーネントを作成するには、Views/Sharedフォルダに部分ビューを作成し、@HTML.Partial("_PartialViewName")を使用して他のビューまたは部分ビューに含めることができます。部分的なビューの詳細はarticleにあります。

+1

実際にはどこでもパーシャルを作成できます。あなたがそこで使った '短い'構文は、現在のフォルダと 'Shared'フォルダを検索します。アプリケーションの相対パスはどこからでもロードすることができます(実際には 'Views'フォルダ内だけでなく) –

+0

@AndrewBarber、コードサンプルで展開できますか?アプリケーション相対パスはどのように見えますか? –

+1

@eric '@ Html.Partial("〜/ OtherDir/File.cshtml ");' –

28

@Html.Action@Html.Partialをお探しの場合は、

ビューでpartial viewまたはフルブローcontroller actionをレンダリングすることができます。これは、MVCの土地での再利用の一般的なパターンです。

コントローラーの動作が高すぎる場合は、displayFor or editorFor templatesとすることがあります。経験則は、ページ上で複数回実行する必要がある場合で、フォームにポストバックする必要がある場合は、テンプレートでそれを行うことを検討してください。

asp.netのコントロールは、MVCがもう少し詳細に細分化する、かなり大きなスワスをカバーしています。

+1

+1はエディタとディスプレイテンプレートを忘れることはありません! –

関連する問題