请您查看下面的代码并说明为什么当列值为null时此代码不会抛出异常?
DataTable table = new DataTable();
table.Columns.Add("PreviewHtml");
table.Rows.Add(new object[] { "aksdhaskldh" });
table.Rows.Add(new object[] { "129836 128o tagjk 1782 3" });
table.Rows.Add(new object[] { null });
table.Rows.Add(new object[] { "1278o36 " });
foreach (DataRow r in table.Rows)
{
Console.WriteLine(r["PreviewHtml"].ToString());
}
答案 0 :(得分:6)
这是因为DBNull.ToString
返回一个空字符串。
默认情况下,DataColumn的AllowDBNull
属性设置为true,否则您无法添加null
值。
Null
值转换为DBNull.Value
,AutoIncrement列也会在null
传递时递增。