我有一个gridview,我跟踪截止日期。我有两个约会。预计日期(截止日期应完成的日期)和实际日期(截止日期完成的日期)。现在在我的数据库中,所有预期日期都有值,因为它们意味着每月大约在同一天完成。但实际日期为空白。
由于空值:Exception Details: System.InvalidCastException: Specified cast is not valid.
现在我在互联网上找到了一些东西,那就是调用一个帮助方法(参见selectedDate属性 - 我将selectedDate的相同值复制到VisibleDate中,因为我有同样的错误)但是这给了我另一个错误是我无法获得新选择的值!
<asp:TemplateField HeaderText="Actual Date" SortExpression="Actual_Date">
<EditItemTemplate>
<asp:Calendar ID="Calendar2" runat="server" VisibleDate='<%# Bind("Actual_Date") %>' SelectedDate='<%# FixNullDate(Eval("Actual_Date")) %>'></asp:Calendar>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label2" runat="server"
Text='<%# Bind("Actual_Date", "{0:d}") %>'>
</asp:Label>
</ItemTemplate>
</asp:TemplateField>
以下是我的模板字段中实际日期的代码
请帮助,我有点失落:p
答案 0 :(得分:1)
您需要检查null:
<%# string.IsNullOrEmpty(Bind("Actual_Date").ToString()) ? "0000-00-00 00:00:00.000": Bind("Actual_Date").ToString() %>