2010-06-03 2 views
3

Я полный C# и MVC noob, поэтому для меня это была жестокая борьба.Таблицы данных отображения, сгруппированные и разделенные заголовками в представлении MVC

Я сделал ужасную, но в конечном итоге успешную работу по созданию веб-сайта для работы, чтобы отобразить результаты предстоящих первичных/местных выборов.

Что мне нужно в конечном итоге на моем сайте - показать все результаты гонок в той же категории. Например, открываются три должности в городской комиссии, и мне нужны результаты для всех трех гонок на одной странице. Я могу отображать все результаты, которые я хочу, отфильтрованные по категориям, и в таблице css довольно, что я не могу понять, так это то, как я разделяю эту таблицу с подзаголовками для каждой отдельной расы.

Данные прямые Linq to SQL и выводятся из одного представления на сервере (репозитории - это то, что должно произойти в моем следующем проекте, если они не являются существенными для этой функции).

ответ

4

Я не совсем уверен, что это то, что вам нужно, сообщите мне, и я постараюсь помочь.

Это не будет работать непосредственно для вас, но мы надеемся, что вы укажете правильный путь. В настоящее время я использую настраиваемую модель представления для хранения этих данных, что я на самом деле думаю о том, чтобы отойти от нее, поскольку моя система становится очень сложной, но она может вам помочь.

я могу объяснить, что это значит, если вам нужно, чтобы я, (я нуб только год назад!)

Я предположил, что вы хотите расы, сгруппированных по категориям.

<% foreach (var group in Model.GroupBy(item => item.categoryId)) Gives you the inital sort 
{ %> 
<% foreach (var item in group.Take(1)) 
{ //Category %> 
<%=Html.Encode(item.CategoryName) %> 
<% } %> 

<% foreach (var item in group) 
{ //Indervidual races%> 

<%=Html.Encode(item.raceResult) %> 
<% } %> 


<% foreach (var item in group.Take(1)) 
{ %> 
<!-- Area which happens after each category grouping --> 
<% } %> 
<% } %> 
2

СПАСИБО ВАС !! Это была именно информация, которую я искал. Model.groupby - это прорыв для меня.

Вот код, который я использовал в конечном FWIW:

<% 
foreach (var group in Model.GroupBy(item => item.contestNumber)) 
{ 
    foreach (var item in group.Take(1)) 
    { 
%> 
     <table width="600"> 
      <tr> 
       <th> 
        <%: item.txtContest %> 
       </th> 
       <th width="40"></th> 
      </tr> 
<% 
     foreach (var result in group) 
     { 
%> 
      <tr> 
       <td> 
        <%: result.Candidate %> 
       </td> 
       <td> 
        <%: result.voteTotal %> 
       </td> 
      </tr> 

<% 
     } 
%> 

     </table> 
     <br /> 
     <br /> 
     <br /> 
<% 
    } 
} 
%> 
+0

Любой шанс развязной upvote;) –

+0

маркированы как ответ, может не UP, как у меня нет никакого Rep (O; – Juspar

Смежные вопросы