【问题标题】:how to insert null date on detailsview如何在详细信息视图上插入空日期
【发布时间】: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;

感谢您的帮助

【问题讨论】:

    标签: c# date null


    【解决方案1】:

    DateTime 是一个值类型。值类型不能为空。好吧,除非你使用 Nullable 类型

    试试

    <asp:Parameter Name="TANGGAL" Type="DateTime?" ConvertEmptyStringToNull="True" /> 
    

    public bool AddRefundSelesai(DateTime? TANGGAL)
    

    【讨论】:

    • 谢谢你,你是对的。我需要更改 AddRefundSelesai(DateTime 到 DateTime?
    猜你喜欢
    • 2010-12-06
    • 1970-01-01
    • 2015-06-27
    • 1970-01-01
    • 1970-01-01
    • 2023-04-03
    • 1970-01-01
    • 1970-01-01
    • 2013-03-28
    相关资源
    最近更新 更多