代码之家  ›  专栏  ›  技术社区  ›  T. Stone

数据表C空列类型

  •  0
  • T. Stone  · 技术社区  · 15 年前

    我正在尝试使用以下代码一次生成一行数据表。

    foreach (var e in Project.ProjectElements[hi.FakeName].Root.Elements()) {
            index = 0;
                object[] obj=new object[count];
                foreach (var holdingColumn in names) {
                    string d = e.Attribute(holdingColumn.Key).Value;
                    obj[index++] = d;
                }
                dt.Rows.Add(obj);
            }
    

    问题是datatable有绑定到列的类型。有时,我在对象索引中传递null(或空字符串),它告诉我不能正确地将其转换为datetime(在本例中)。我的问题是我应该将这个值默认为什么,或者是否有某种方法让datatable忽略空值。

    1 回复  |  直到 15 年前
        1
  •  3
  •   SLaks    15 年前

    设置 AllowDBNull 财产 DataColumn 如果是真的,那就写

    if (String.IsNullOrEmpty(d))
        obj[index++] = DBNull.Value;
    else
        obj[index++] = d;