【发布时间】:2017-09-28 17:06:08
【问题描述】:
我在数据库和数据集中设置了日期列可能包含空值。但是程序运行时总是要求填写日期栏,报错如下:
附加信息:SqlDateTime 溢出。必须在 1753 年 1 月 1 日凌晨 12:00:00 到 9999 年 12 月 31 日晚上 11:59:59 之间。
<div>
<asp:DetailsView ID="DetailsView1" runat="server" Height="50px" Width="125px" AutoGenerateRows="False" DataKeyNames="IDREFUNDSELESAI" DataSourceID="RefundSelesaiObjectDataSource">
<Fields>
<asp:BoundField DataField="TANGGAL" HeaderText="TANGGAL" SortExpression="TANGGAL" DataFormatString="{0:d}" />
<asp:ObjectDataSource ID="RefundSelesaiObjectDataSource" runat="server" SelectMethod="GetRefundSelesaiByIdRefund" TypeName="dms_mkph.bll.RefundSelesaiClass" DeleteMethod="DeleteRefundSelesai" InsertMethod="AddRefundSelesai" UpdateMethod="UpdateRefundSelesai" >
<DeleteParameters>
<asp:Parameter Name="idRefundSelesai" Type="Int32" />
</DeleteParameters>
<InsertParameters>
<asp:Parameter Name="TANGGAL" Type="DateTime" />
bll.cs
[System.ComponentModel.DataObjectMethodAttribute(System.ComponentModel.DataObjectMethodType.Insert, true)]
public bool AddRefundSelesai(DateTime TANGGAL)
{
// Create a new ProductRow instance
RefundDataSet.REFUNDSELESAIDataTable dtRefundSelesai = new RefundDataSet.REFUNDSELESAIDataTable();
RefundDataSet.REFUNDSELESAIRow rRefundSelesai = dtRefundSelesai.NewREFUNDSELESAIRow();
if (TANGGAL == null) rRefundSelesai.SetTANGGALNull(); else rRefundSelesai.TANGGAL = TANGGAL;
感谢您的帮助
【问题讨论】: