将对象渲染为 html 的最佳方式

发布于 2024-10-11 08:23:21 字数 238 浏览 0 评论 0原文

将数据对象呈现为 html 的最佳方法是什么?

考虑到我的对象应该在页面上动态绘制,并且它将由多个控件(标签、文本框、复选框、下拉列表...等)组成。

我的目标是一份包含各部分的报告。

每个部分都包含组。组应绘制为手风琴视图。

组包含将根据指定字段类型呈现为标签、文本框、复选框或下拉列表的字段。

渲染该对象的最佳方法是什么?

我正在使用 asp.net mvc 2

What is the best way to render a data object into html?

Take into your consideration that my object should be dynamically drawn on the page and it will be consisted of multiple controls (Labels, TextBoxes, CheckBoxes, DropdownLists ... etc).

My object is a report which contains sections.

Each sections contains groups.Groups should be drawn as an Accordion view.

Groups contains fields which will be rendered as Labels,TextBoxes, CheckBoxes or maybe DropdownLists according to the specified field type.

What is the best way to render that object?

I'm using asp.net mvc 2

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

一梦等七年七年为一梦 2024-10-18 08:23:22

查看显示模板。

它的工作原理如下:
您有一个 ascx 文件“部分视图”,其名称与您的类相同并且“强类型”。把它放在 /Views/Shared/DisplayTemplates" 中。

然后你可以使用 Html.Display("varName","className"); 用 DisplayTemplate 显示你的对象。

控制器:

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

View:

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

Views/Shared/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

Look at DisplayTemplates.

It works like this:
You have an ascx file "partial view", vith the same name as your class and "strongly typed". Put it in /Views/Shared/DisplayTemplates".

Then you can just use Html.Display("varName","className"); to show your object with the DisplayTemplate.

Controller:

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

View:

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

Views/Shared/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

女中豪杰 2024-10-18 08:23:22

最好的方法是创建一个视图,然后使用 Html 帮助器类/方法。请参阅 此处,了解更多信息。

像这样的事情应该让你开始:

<% Html.TextBox("stringData", Model.YourString) %>
<% Html.CheckBox("boolData", Model.YourBool) %>

The best way is to create a View, then use the Html helper class/methods. See here, for more info.

Something like this should get you started:

<% Html.TextBox("stringData", Model.YourString) %>
<% Html.CheckBox("boolData", Model.YourBool) %>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文