2

構築しているASP.NETMVCアプリケーションがあり、マスターページを使用しています。このマスターページでは、「タブ」、「ヘッダー」、「フッター」用に別のファイルを作成して、さらに細かく分けたいと思います。

マスターページから雑然としたものを取り除くために、これらのものをカプセル化するためにどのようなビューを作成する必要がありますか?また、マスタービューの正しい場所でこれらを参照して、適切にレンダリングできるようにするにはどうすればよいですか?

MVCのビュー/コンテンツビュー/ユーザーコントロールなどを作成するために使用できるオプションにはいくつかの種類があり、このタスクに適切なものとその使用方法を知る必要があります。

4

2 に答える 2

3

WebForms ビューを使用している場合は、次の 3 つのオプションがあります。

部分ビュー / ユーザー コントロール:

Html.RenderPartial を使用します (今日の ASP.NET MVC 1.0 でタブを作成するための最良の方法だと思います)。マークアップは次のようになります。

<% Html.RenderPartial(ViewData["TabName"], ViewData["TabData"]); %>

ネストされたマスターページ:

  • コンテンツ、ヘッダー、サイドバー、フッター用の ContentPlaceHolders を使用した Site.master ...
  • のタブの ContentPlaceHolder を使用した Tabs.master<asp:Content ContentPlaceHolderID="Content" >
  • 多くの Tab1.aspx ... タブ用の TabN.aspx 。

HtmlHelper 拡張機能:

次のようなものを使用できます(タブを作成する方法は間違っていると思います):

<% if(ViewData["TabName"] = "Tab1") { %>
    <%= Html.Tab1() %>
<% } else if(ViewData["TabName"] = "Tab2") { %>
    <%= Html.Tab2() %>
<% } else ...
... 
...
...
于 2009-06-12T20:32:52.847 に答える
0

すでにユーザーコントロール/部分ビューを検討しましたか??

編集: html だけの場合は、html ファイルを作成し、ヘルパー メソッドを使用してレンダリングできます。

于 2009-06-12T19:39:09.260 に答える