需要更新数据库的信息记录在 DataTable dt1 中
后面代码中 adapter.Update(ds.Tables["dt1"]);
但是,如果运行中,前面没有向 dt1 写入数据,上面这一句就会异常:
“值不能为空。   参数名: dataTable”请问这个怎么处理?

解决方案 »

  1.   

    我改了一下:if (ds.Tables["dt1"].Rows.Count != 0)
                {
                    adapter.Update(ds.Tables["dt1"]);
                }还是异常:
    NullReferenceException
    "未将对象引用设置到对象的实例"
      

  2.   

    检查看看ds里面有这个名称dt1 的TABLE吗?
      

  3.   


    确定是有的。
    因为,在运行时,如果向dt1传入了数据,后面的
    adapter.Update(ds.Tables["dt1"]);
    就运行正常,而且在数据库里可以看见新加的数据
    只有在没有传入数据到dt1的时候,才会出现这个异常。
    您再给诊断一下吧!3Q!
      

  4.   


    1 有数据传入dt1时正常,空的dt1在Update时出错。
    2 我在2楼的代码中,加上了if判断语句
    现在怎么办呢?
      

  5.   


    HOHO~~刚才理解有偏差
    您的意思是,加一句这样的判断:if (ds.Tables["dt1"] != null)
                {
                    adapter.Update(ds.Tables["dt1"]);
                }问题解决
    非常感谢!
      

  6.   

    确定在新建datatable时 有没有new datatble