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吧 展开
通过dt无法获取NULL的值,如AB字段最后取的是""空串,而AD取的是""空串
如果我们给dt.Rows[0][1]赋值null,再判断dt.Rows[0][1]是否为空,结果也是false的
也许我们可以通过其它方法得到null值,但是对DataTable来说,不支持null本身应该算是bug吧 展开
1个回答
展开全部
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();
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询