Asp.net 更改DataView中字段的日期格式
我在数据视图中有一个日期字段,我想将其格式化以显示“MM/DD/YYYY”。问题是我从一个服务中得到这个日期,我似乎无法在Eval函数中格式化它,我在DataView中设置了这个字段Asp.net 更改DataView中字段的日期格式,asp.net,dataview,Asp.net,Dataview,我在数据视图中有一个日期字段,我想将其格式化以显示“MM/DD/YYYY”。问题是我从一个服务中得到这个日期,我似乎无法在Eval函数中格式化它,我在DataView中设置了这个字段 <asp:GridView ID="gvTransactionHistory" runat="server" AutoGenerateColumns="false"> <Columns> <asp:Tem
<asp:GridView ID="gvTransactionHistory" runat="server"
AutoGenerateColumns="false">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="lblTransactionDate" runat="server" Text='<%# Eval("transactionDate") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
我尝试将String.Format(“{mm/DD/yyyy}”)添加到Text属性,但这是不允许的。我还尝试了DataView的Pre_Render事件,但运气不太好。格式是
Eval
的第二个参数。以下内容将帮助您实现目标:
<asp:Label ID="lblTransactionDate" runat="server"
Text='<%# Eval("transactionDate", "{0:MM/dd/yyyy}") %>'></asp:Label>
上面我已将字符串
转换为日期时间
,以便它可以使用该格式。您可以使用以下内容:
<asp:Label ID="lblTransactionDate" runat="server" Text='<%#String.Format("{0:MM/dd/yyyy}",Eval("transactionDate")) %>'></asp:Label>
尝试过,但仍然采用了旧方法,就好像我没有格式化任何内容一样。想法?您的transactionDate
属性是DateTime
还是string
?汗,日期似乎是以字符串形式返回的,例如:“2013-09-30”@user2146538我想您的属性可能是字符串。请看我的edit.Khan,我有大写的MM,但是我把字符串转换成了DateTime,现在可以使用了。谢谢你确定你用的是MM,不是MM,dd不是dd吗?
<asp:Label ID="lblTransactionDate" runat="server" Text='<%#String.Format("{0:MM/dd/yyyy}",Eval("transactionDate")) %>'></asp:Label>