Asp.Net MVC3プロジェクトで、剃刀エンジンを使用して作業しているとき、私は最高の状態で処理する方法がわからないという状況を発見しました。ビューで は、私は次のような状況があります。スクリプトとcssをMVC3のレンダリング/パーシャルビューに含める最も良い方法
@foreach (var item in Model.Items) {
Html.RenderAction("ActionName", new {param = item});
}
私はそれが非常に典型的な状況だと思います。
ここで、正しく動作させるにはjavascriptファイルを2つ必要とし、HTMLも表示するとします。また、このアクションのpartialViewは、1回以上別のビューでも使用できるようにする必要があります。
質問は次のとおりです。外部jsとcssへの参照はどこに置くのが最適でしょうか?私はPartialViewで言うだろう...しかし、私はn回RenderActionを呼び出すことを避けることができます、同じスクリプトの宣言n倍のページを置くことはありません? また、jsとcssを繰り返すという問題は解決されました。この外部リソースをビューにどのようにバインドする必要がありますか?通常、私の見解では、パフォーマンス上の理由から、外部リソースを専用セクションに置き、レイアウトページをページの最下部にレンダリングします。それを呼び出すビューがスクリプトセクションにアクセスできると仮定して、partialViewで同じことをする必要がありますか?しかし、この方法で再利用可能なpartialViewのデザインをホスティングビュー構造にバインドします:もしそうなら、私はホスティングビューでスクリプトとCSSを宣言するべきではありませんか?
私はMVCには新しく、このアプローチではどのアプローチを使用してこの設計上の問題を解決しているのか知りたいと思います。
ループの前に参照を置くことを推奨しますが、設計上の問題が発生すると思います。メインビューでは、パーシャルビューが表示されるために必要な部分を知っている必要があります。おそらくこれはデザインパターンの点では良くありません... – themarcuz
メインビューは何を意味していますか?あなたのコントローラーまたはレイアウトビューでアクションのためのビューですか? –
私はアクションのビューを意味します – themarcuz