Как отобразить количество циклов в цикле foreach на странице HTML - PullRequest
0 голосов
/ 18 ноября 2011

В настоящее время я пытаюсь подсчитать количество результатов поиска, возвращаемых в моем представлении ASP.NET MVC, чтобы отобразить, сколько результатов поиск дал в ответ.

Я попытался подсчитать количество цикловforeach, который отображает результаты поиска.

Я также пытался подсчитать количество элементов в объекте Model, возвращаемом с видом:

<% Html.Display(Model.Count().ToString());%>

, на котором он никогда ничего не публикуетмой сайт.

Кто-нибудь есть идеи, как решить эту проблему?

Ответы [ 3 ]

2 голосов
/ 18 ноября 2011

Единственный способ узнать, сколько итераций прошло в цикле foreach, - это самостоятельно включить счетчик:

int count = 0;
foreach (var thing in things) {
  count++;
  // Do something useful
}
// count is now the number of iterations

Чтобы отобразить в представлении .aspx, используйте:

<%= count %>

или в Razor:

@count

Если это не сработало для вас, то в игру вступает какой-то другой фактор.Можете ли вы показать короткий рабочий пример, где это не работает?

0 голосов
/ 11 июля 2014
  @foreach (var item in Model.PageInfo.Products.Select((x, i) => new { Data = x, Index = i }))
0 голосов
/ 18 ноября 2011

Может быть

  <span><% Model.Count() %></span>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...