How do I group data in an ASP.NET MVC View?

后端 未结 2 1027
难免孤独
难免孤独 2020-12-02 15:54

In reporting tools like Crystal Reports, there are ways to take denormalized data and group it by a particular column in the data, creating row headings for each unique item

2条回答
  •  我在风中等你
    2020-12-02 16:33

    If your view is strongly typed, you can use the LINQ GroupBy extension method with nested foreach:

      <% foreach (var group in Model.GroupBy(item => item.Category)) { %>
    • <%= Html.Encode(group.Key) %>
        <% foreach (var item in group) { %>
      • <%= Html.Encode(item.Data) %>
      • <% } %>
    • <% } %>

    This will provide output much like your formatted lists in the original question. It assumes your model looks something like:

    public class ViewModel
    {
        public string Category { get; set; }
        public string Data { get; set; }
    }
    

提交回复
热议问题