【发布时间】:2013-02-10 21:07:30
【问题描述】:
我用数据库中的数据填充了datatable 对象,我需要检查其中一些是否为NULL 并将其设置为空字符串。
问题是有些数据在数据库中是NULL,但在DataTable 中却是"0"。
我尝试设置为""、String.EmptyString 等。没有任何效果。
foreach (DataRow row in ds.Tables[0].Rows)
{
foreach (DataColumn c in ds.Tables[0].Columns)
{
object value = row[c];
if (value == DBNull.Value)
{
try
{
row[c] = "";
【问题讨论】:
-
"问题是有些数据在数据库中为 NULL,但在 DataTable 中为"0"。"我不相信你。 :) 你能写一个示例程序来证明这一点吗?我以前从未见过这种行为。
-
您需要首先了解数据库架构是否允许空值,然后设置为 string.empty 将起作用。如果不是,那么您需要将空值设置为 DBNUll 并且“”与设置为空
-
相信我 :) int 列为空,日期列为空。我在
Row.ItemArray[0]=0、Row.ItemArray[0]={1/1/1900 12:00:00 AM}中的DataTable。
标签: c# database ado.net dataset datarow