用户可以使用以下代码选择日期,日期显示在TextBox中。
<asp:TextBox ID="dateTB" runat="server" />
<asp:ImageButton ID="ib" ImageUrl="/calendar.png" ImageAlign="Bottom" runat="server" />
<asp:CalendarExtender ID="Cal1" PopupButtonID="ib" runat="server" TargetControlID="dateTB" Format="MM/dd/yyyy">
</asp:CalendarExtender>
之后,我将该日期存储在SQL Server数据库中。
问题:当用户没有输入日期时,SQL Server默认存储1/1/1900。
如果用户离开空日期字段,那么SQL Server不会存储1/1/1900,我该怎么办?
我尝试了什么:如果我查看是什么,dateTB是空的。如果它是空的,那么做一些事情然后插入数据库。
If (String.IsNullOrEmpty(dateTB.Text)) Then
' do something with dateTB??
End If
我想要发生的事情:如果它是默认日期(1/1/1900),那么我想存储空值,而不是1/1/1900。
答案 0 :(得分:0)
由于您没有完整的示例,我猜测您用于存储日期值的VB代码中的字段不可为空,因此将其设置为默认值。您可以使用可空类型来解决此问题。不要使用魔法值; 1/1/1900是合法的约会。