У меня есть такой повторитель:
<asp:Repeater ID="rptrRooms" runat="server" OnItemCommand="Choose_Room">
<ItemTemplate>
<asp:Button ID="btnChooseRoom" runat="server"
CommandName="<%# Container.DataItem.ToString %>" Text="<%# Container.DataItem %>"
/>
</ItemTemplate>
</asp:Repeater>
Я привязываю источник данных к повторителю примерно так:
Dim dbRooms As New pbu_housingEntities
Dim gender As String = Session("gender").ToString
Dim hall As String = CStr(Session("hall"))
Dim selectedRooms = (From sh In dbRooms.Rooms _
Where sh.gender = gender _
Where sh.current_occupancy < sh.max_occupancy _
Where sh.is_available = True _
Where sh.building_name = hall _
Select sh.room1
)
rptrRooms.DataSource = selectedRooms
rptrRooms.DataBind()
Проблема в том, что я также хочу показать зрителюдоступно количество мест в номере.Но для этого необходимо каким-то образом использовать current_occupancy / max_occupancy или выполнить вычисление (например, max_occupancy - current_occupancy = actual_available), а затем вернуть его вместе с комнатой.
Конечный результат, который я ищу, - возвращатькомната в кнопке управления с текстом, который выглядит так: «Комната 1 - 2 открыт», «Комната 8 - 1 открыт» и т. д.