c# DataTable的单元格取值Null赋值null的问题

DataTabledt的数据来自数据库某表A,有字段AA,AB,AC,AD,,数据类型int,varchar(50),varchar(50),int,,,,有数据一行12... DataTable dt的数据来自数据库某表A,有字段AA,AB,AC,AD,,数据类型int,varchar(50),varchar(50),int,,,,有数据一行 123,NULL,wfwf,NULL
通过dt无法获取NULL的值,如AB字段最后取的是""空串,而AD取的是""空串
如果我们给dt.Rows[0][1]赋值null,再判断dt.Rows[0][1]是否为空,结果也是false的
也许我们可以通过其它方法得到null值,但是对DataTable来说,不支持null本身应该算是bug吧
展开
 我来答
玩转数据处理
推荐于2016-08-14 · 数据处理,Python,dotnet
玩转数据处理
采纳数:1613 获赞数:3794

向TA提问 私信TA
展开全部
DataTable dt = new DataTable("demo");
dt.Columns.AddRange(new DataColumn[] { new DataColumn("AA", Type.GetType("System.Int32")), new DataColumn("AB", Type.GetType("System.String")), new DataColumn("AC", Type.GetType("System.String")), new DataColumn("AD", Type.GetType("System.String")) });
dt.Rows.Add(new object[] { 123, null, "wfwf", null });
dt.Rows.Add(new object[] { 123, null, "wfwf", null });
dt.Rows.Add(new object[] { 123, null, null, null });
dt.Rows.Add(new object[] { 123, null, "wfwf", null });
for (int i = dt.Columns.Count - 1; i >= 0; i--)
{
    int rowIndex = 0;
    foreach (DataRow r in dt.Rows)
    {
        if (r.IsNull(dt.Columns[i]))
            Console.WriteLine("row [{0}][{1}] is null", rowIndex.ToString(), i.ToString());
        rowIndex++;
        continue;
    }
}
Console.ReadKey();
大雅新科技有限公司
2024-11-19 广告
这方面更多更全面的信息其实可以找下大雅新。深圳市大雅新科技有限公司从事KVM延长器,DVI延长器,USB延长器,键盘鼠标延长器,双绞线视频传输器,VGA视频双绞线传输器,VGA延长器,VGA视频延长器,DVI KVM 切换器等,优质供应商,... 点击进入详情页
本回答由大雅新科技有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式