2013-04-25 3 views
1

У меня есть просмотр списка на моих страницах, и я хочу отобразить некоторые статистические данные, мой класс ресторана имеет свойство резервирования public List<Reservation> Reservations { get; private set; }, в моем ListView, я хотел бы отобразить количество резервирований, но не делая новое свойство, как «ReservationsCount», ничего подобного <%#Eval("Reservations")%>.Count не работает это не распространяетсяВызов функции из результата ListView Eval call

<td id="Td10" runat="server"> 
    <%#Eval("Reservations")%> 
</td> 

Результат этого <%#Eval("Reservations")%> находится на странице ASPX рассматриваемого объекта, а не список ресторанов, я не знаю, почему, я просто начинаю с asp.net, поэтому, пожалуйста, помогите, возможно, решение смешно легко :)

ответ

2

Попробуйте применения count() непосредственно после Eval():

<%# ((List<Reservation>)Eval("Reservations")).Count() %> 

Насколько я знаю, вы должны ссылаться System.Linq для этой работы. Без Linq вы могли бы попробовать использовать Count свойство List<T>:

<%# ((List<Reservation>)Eval("Reservations")).Count %> 
+0

Он работает как это не распространяется, и я не могу назвать .Count свойство, потому что функция Eval возвращает тип объекта, а не список :( – Martin

+0

Обновленный мой ответ, чтобы отличить тип. –

+0

Большое спасибо, я отредактировал мой вопрос, чтобы поставить окончательный код – Martin

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