将Datatable值保存为空字符串而不是null

时间:2011-03-16 11:03:53

标签: c# .net

我正在使用SqlDataAdapter将表中的某些值保存到数据库中:

private BindingSource bindingSource1 = new BindingSource();
private SqlDataAdapter dataAdapter = new SqlDataAdapter();
...
dataAdapter.Update((DataTable) bindingSource1.DataSource);

但它在数据库中将空值保存为null。反正有没有把它们保存为空字符串呢?

2 个答案:

答案 0 :(得分:2)

经过一些研究,每个人似乎都在手动做,所以我写了一个方法来做到这一点。

  public static DataTable RemoveNulls(DataTable dt)
    {
        for (int a = 0; a < dt.Rows.Count; a++)
        {
            for (int i = 0; i < dt.Columns.Count; i++)
            {
                if (dt.Rows[a][i] == DBNull.Value)
                {
                    dt.Rows[a][i] = "";
                }
            }
        }

        return dt;
    }

和一些相关链接

http://madskristensen.net/post/Remove-nulls-from-a-DataTable.aspx

http://forums.asp.net/t/307989.aspx/1?remove+null+rows+in+data+table

答案 1 :(得分:0)

您是否尝试使用String.Empty填充有问题的字段?