基本的なテーブル設定を含むメイン レイアウト ページがあります。RenderBody() を入れるために使用するメイン コンテンツ セルがあります。製品データベースを使用する製品リストがあり、右側にユーザー データベースにアクセスする必要があるメニューがあります。製品モデルを使用してメイン コンテンツ セルに製品をリストし、ユーザー モデルを使用してメニュー セルに情報をリストするにはどうすればよいですか?
質問する
604 次
2 に答える
2
私が使用した唯一の方法 (ただし、ベスト プラクティスの状態については完全には確信が持てません) は、(あなたの場合)product
モデルとモデルの両方を含むページのモデルを作成することuser
です。これらのモデルをコントローラーに入力し、ビューで通常行うように内部モデルにアクセスします。
于 2012-12-28T21:06:47.487 に答える
2
パーシャルを使用して、コンテンツ セクションをレンダリングできます。
あなたのページがこのモデルを使用していると想像してください:
public class PageModel {
public string Title { get; set; }
public ProductListModel Products { get; set; }
}
次に、部分ビューをレンダリングして、そのモデルを渡すことができます。
@Html.Partial( "name of partial view", Model.Products )
もう少しパフォーマンス コストがかかるアプローチは、アクションを呼び出して部分ビューをレンダリングすることです。
public class ProductsController {
public ActionResult List() {
var model = new ProductListModel();
return View( "your partial view", model );
}
}
そしてあなたの見解では:
@Html.Action( "list", "products" )
後者の方法の利点は、ページ モデルを比較的クリーンに保つことができるため、ページを表示するために必要なすべてのデータを含める必要がないことです。
于 2012-12-28T21:09:56.577 に答える