首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MVC中的分层数据

MVC中的分层数据
EN

Stack Overflow用户
提问于 2010-07-07 20:47:31
回答 2查看 85关注 0票数 0

在webforms中,我在中继器(Hieararchical模型)中使用了中继器。如何在MVC中实现同样的功能?

示例:

代码语言:javascript
运行
复制
Data1           Data2
 subdata1        subddata3
 subdata2        subdata4

Data3            data4
 subdata5         subdata7
 subdata6         subdata8 

我还需要一个如上所示的两列布局。有什么想法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-07-07 20:56:03

我不记得我是在哪里读到这篇文章的,但它适用于你:

--但是在MVC中我们至少需要一个转发器控件吗?

--我们有一个中继器控件。它被称为for each循环

假设您的视图模型有一个IEnumerable<SuperDuper>类型的名为Data的属性。要迭代它,您只需执行以下操作

代码语言:javascript
运行
复制
<% foreach (var sd in Model.Data) { %>
<!-- write out fancy stuff -->
<% } <%>

要迭代子数据,假设SuperDuper有一个名为SubData的属性,该属性也是一个IEnumerable<Something>。没有什么能阻止你去做

代码语言:javascript
运行
复制
<% foreach (var sd in Model.Data) { %>
<!-- write out some fancy stuff -->
    <% foreach (var sub in sd.SubData) { %>
    <!-- write out some more fancy stuff -->
    <% } 
 } %>

对于两列布局,求助于CSS。

由于Razor正在开发中,我忍不住要向您展示这些示例在新引擎上会是什么样子:

代码语言:javascript
运行
复制
@foreach (var sd in Model.Data) {
<!-- write out fancy stuff -->
}


@foreach (var sd in Model.Data) {
<!-- write out some fancy stuff -->
    @foreach (var sub in sd.SubData) {
    <!-- write out some more fancy stuff -->
    } 
}
票数 1
EN

Stack Overflow用户

发布于 2010-07-07 21:06:37

spark view engine中,你可以这样做:

代码语言:javascript
运行
复制
<div each="var item in Model.Data">
   ${item.Title}
   <div each="var subItem in item.SubData" style="padding-left: 20px">
       ${subItem.Title}
       <!-- Do some fancy stuff -->
   </div>
</div>

剃刀?讨厌!;)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3194765

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档