Rua*_*uan 0 c# sql asp.net date
有没有办法格式化我从我的数据集(这是一个日期类型)得到的文本,以不显示时间.
我在我的SQL查询中将日期格式化为不显示时间,但后来我不得不将其更改为字符串,我需要数据类型仍为日期.
所以我不能再用这个了......
CONVERT(varchar(15),em.endDate,111)as endDate - > 2001/05/05
这不起作用
CONVERT(Date,em.endDate,111) - >输出:输出:5/5/2001 12:00:00 AM
这是我的模板.
<asp:TemplateField HeaderText="endDate" SortExpression="endDate">
<ItemTemplate>
<asp:Label ID="lblEndDate" runat="server" Text='<%# Bind("endDate") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
Run Code Online (Sandbox Code Playgroud)
有没有办法可以修改模板以删除日期的时间?
是的,你可以使用ToShortDateString
:
Text='<%# ((DateTime)Eval("endDate")).ToShortDateString() %>'
Run Code Online (Sandbox Code Playgroud)
要么
Text='<%#Eval("endDate","{0:d}")%>'
Run Code Online (Sandbox Code Playgroud)
或者使用RowDataBound
(假设GridView
,也适用于其他webdatabound控件,如带ItemDataBound
事件的Repeater ):
protected void Gridview1_RowDataBound(Object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
DataRow row = ((DataRowView)e.Row.DataItem).Row; // you might use a different datasource, use the debugger if you are unsure
Label lblEndDate = (Label)e.Row.FindControl("lblEndDate");
lblEndDate.Text = row.Field<DateTime>("endDate").ToString("d");
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3766 次 |
最近记录: |