在ASP.Net MVC中,有什么办法可以将以下代码压缩到单个foreach循环吗?如何在MVC中的单个foreach循环中创建一个水平表?
<table class="table">
<tr>
<td>
Name
</td>
<%
foreach (var item in Model)
{
%>
<td>
<%= item.Name %>
</td>
<%
}
%>
</tr>
<tr>
<td>
Item
</td>
<%
foreach (var item in Model)
{
%>
<td>
<%= item.Company %>
</td>
<%
}
%>
</tr>
</table>
如果模型是一个IEnumerable<SomeObject>
:
public class SomeObject
{
public virtual Name {get;set;}
public virtual Company {get;set;}
}
这将输出一个表,如下所示:
Name | Bob | Sam | Bill | Steve |
Company | Builder | Fireman | MS | Apple |
我知道我大概可以使用扩展方法写出来的每一行,但有可能在模型上使用一次迭代来构建所有行?
这是从question继续,因为我不满意我接受的答案,不敢相信我提供了最好的解决方案。
AFAIK它不可能在给定condition.good问题单回路虽然:) – Salil 2010-06-10 07:15:56
你有使用不同的结构,除了一个表考虑?在这种情况下对我来说没有意义。除IE6和7以外,CSS display:table-cell/table-row可能值得考虑。所以没有表格:) – Ahmad 2010-06-10 09:03:44