【发布时间】:2022-01-15 13:21:35
【问题描述】:
英语不是我的第一语言。
我想将 List(of Date) 绑定到 Repeater 控件。我选择任何一天,然后用一天中的 24 小时填写一份清单。然后,当我将该列表作为 Repeater 的 Datasource 传递时,我希望看到:'12/10/2021 12:00:00 am', '12/10/2021 01:00:00 am', '12/10/2021 02:00 am', '12/10/2021 03:00:00 am' 等。但不是列表呈现为:'12/10/2021 12:00:00 am'、'12/10/2021 12:00:00 am'、'12/10/2021 12:00:00 am'、'12 /10/2021 12:00:00 am'等
当您将 list(of date) 作为控件的 datasource 传递时,为什么缺少 Time 部分?
我的代码:
Dim dDate As Date = Date.Now
Dim oHours As New List(Of Date)
For i As Integer = 0 To 23
oHours.Add(New Date(dDate.Year, dDate.Month, dDate.Day, i, 0, 0))
Next
With Repeater1
.Datasource = oHours
.Databind()
End With
标记:
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<div>
<asp:LinkButton ID="LinkButton1" runat="server" CommandArgument='<%# Eval("Date")%>'>
<%# Eval("Date")%>
</asp:LinkButton>
</div>
</ItemTemplate>
</asp:Repeater>
【问题讨论】:
-
Eval("Date")将只回显没有时间信息的日期。您需要格式化输出或使用函数。 -
Eval("Date").toString("MM/dd/aaaa hh:mm") 也一样,输出日期部分但忽略时间部分
标签: asp.net .net vb.net datetime