【发布时间】:2011-01-27 18:18:44
【问题描述】:
我想知道如何最好地解决这个问题,因为在我看来,我现在所拥有的对于硬编码列非常有用——我想知道如何扩展它以使列成为动态的。
控制器:
var dc = new DataContextDC();
return View(dc.items.Where(i=>i.IsPublic == true));
查看:
<% foreach (var grp in Model.GroupBy(s => s.GroupColumn)) { %>
<%= Html.Encode(grp.Key) %>
<% foreach (var item in grp) { %>
<%= Html.Encode(item.Title) %>
<% } %>
<% } %>
如上所述,目标是让用户选择哪个列替换上面的“GroupColumn”。我想避免添加任何外部库等。
我看到使用反射(缓慢,但完全动态),或者因为这是我的应用程序中的一个视图,我只是为数据库中的每一列复制上述代码,然后在其上放置一个 switch 语句(快速,肮脏,但有效)
【问题讨论】:
标签: c# .net asp.net-mvc linq