从.NET中的SQL显示日期

时间:2013-10-18 06:49:13

标签: asp.net date

我需要在我的页面文本框中显示数据库中的日期值。

    Dim dbl As New vtisDAL.vtisDALDataContext
    Dim dsGetFacultydetails = From f1 In dbl.usp_GetFacultyDetails(Val(lblFacultyID.Text)).AsQueryable

    For Each entry In dsGetFacultydetails
        txtApprDate.Text = Convert.ToDateTime(entry.ApprovalDate).Date
    Next

当表格中的列为空时,文本框的值为 00:00:00 。如何将框显示为空?

3 个答案:

答案 0 :(得分:0)

试试这个

if(Convert.ToDateTime(entry.ApprovalDate).Date.ToString().Contains("00:00:00")))
{
    txtApprDate.Text=string.Empty;
}
else
{
    txtApprDate.Text = Convert.ToDateTime(entry.ApprovalDate).Date.ToString();
}

或 在行下面添加

 txtApprDate.Text= Convert.ToDateTime(entry.ApprovalDate).Date.ToString().Contains("00:00:00")?
                  string.Empty :  
                  Convert.ToDateTime(entry.ApprovalDate).Date.ToString();

而不是这一行

txtApprDate.Text = Convert.ToDateTime(entry.ApprovalDate).Date

我对vb.net并不熟悉,所以请将此代码转换为vb.net。

答案 1 :(得分:0)

在转换之前,您应该检查 ApprovalDate

试试这个 -

//It is in C#
txtApprDate.Text= String.IsNullorEmpty(entry.ApprovalDate.ToString())? "" :  Convert.ToDateTime(entry.ApprovalDate).ToShortDateString(); 

取代 -

txtApprDate.Text = Convert.ToDateTime(entry.ApprovalDate).Date

答案 2 :(得分:0)

我已经解决了这个问题。我的代码是这样的。

        If (entry.ApprovalDate.ToString() = "") Then
            txtApprDate.Text = String.Empty
        Else
            txtApprDate.Text = Convert.ToDateTime(entry.ApprovalDate).Date
        End If

非常感谢帮助我的人们。 :)