当XML文件中不存在节点时,插入空



说明:如果一个节点不存在,我如何将空值插入到数据库中。

这是每个值/名称出现的4个地方之一,所以我将尽可能清楚地描述一个项目的生命周期。

首先在LINQ部分设置变量:

    lastDateToOrder = (string) x.Descendants("lastDateToOrder").FirstOrDefault
    //This will either populate a date or null
第二个是SQL语句:
    string qry = @"Insert into TABLE
                   (lastDateToOrder)
                  values(@lastDateToOrder)";

最后,设置参数:

    qryInsert.Parameters
    .Add("@lastDateToOrder", SqlDbType.DateTime).Value = entry.lastDateToOrder;

最后一节是导致问题的部分,因为我得到一个错误说@lastDateToOrder没有得到定义,我可以看到只有当值为null时才会出现这种情况。

我不知道什么是错的,为什么当进入。lastDateToOrder携带一个null值,它不会被设置为null

通过深入研究另一个问题找到了这个答案。

Assign null给SqlParameter

qryInsert.Parameters
.Add("@lastDateToOrder", SqlDbType.DateTime).Value = (object) entry.lastDateToOrder ?? DBNull.Value

最新更新