2011-01-12 6 views
1

データオブジェクトをHTMLにレンダリングする最良の方法は何ですか?オブジェクトをhtmlにレンダリングする最良の方法

私のオブジェクトをページ上に動的に描画し、複数のコントロール(ラベル、テキストボックス、チェックボックス、ドロップダウンリストなど)で構成する必要があることを考慮してください。

Myオブジェクトはセクションを含むレポートです。

各セクションにはグループが含まれます。グループはアコーディオンビューとして描画する必要があります。

グループには、指定したフィールドタイプに応じて、ラベル、テキストボックス、チェックボックス、またはドロップダウンリストとしてレンダリングされるフィールドが含まれます。

そのオブジェクトをレンダリングする最も良い方法は何ですか?

私は最善の方法は、Htmlヘルパークラス/メソッドを使用し、その後、ビューを作成することであるのasp.net MVC 2

答えて

1

ルック。

このように動作します: あなたのクラスと同じ名前で "強く型付けされた"という名前のascxファイル "パーシャルビュー"があります。中/閲覧/共有/ DisplayTemplatesそれを入れて」(VARNAME " "クラス名"); DisplayTemplateを使用してオブジェクトを表示するために

コントローラ

次に、あなただけのHtml.Displayを使用することができます。":

を。
ViewData["var"] = new MyClass(); 

ビュー:

Html.Display("var","MyClass"); 

閲覧/共有/ DisplayTemplates/MyClass.ascx

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<MyNamespace.MyClass]>" %> 
<div class="Hey"> 
    <!-- code for showing my class here --> 
    <% Model.Property; //Model is of type MyClass 
      %> 
</div> 

http://www.asp.net/mvc/videos/mvc2-template-customization

http://weblogs.asp.net/scottgu/archive/2010/01/10/asp-net-mvc-2-strongly-typed-html-helpers.aspx

0

を使用しています。詳細は、hereを参照してください。このような

何かあなたが始める必要があります。DisplayTemplatesで

<% Html.TextBox("stringData", Model.YourString) %> 
<% Html.CheckBox("boolData", Model.YourBool) %> 
関連する問題