DataTable table=new DataTable("infomation");
...
SqlDataReader recm=myCommand.ExecuteReader();
...
myDataGrid.DataSource=new DataSet(table);----------------------------------------
我从数据库中提出table,没有问题,当我想把table给DataSet时出现错误,语法错误,
 与“System.Data.DataSet.DataSet(string)”最匹配的重载方法具有一些无效参数
----------------------------------------说要一个String参数,感觉上要把table表名转成string,然后我就
myDataGrid.DataSource=new DataSet(table.toString());
这次编译没问题了,但是运行时出现错误,---------------------
应用程序中的服务器错误。未将对象引用设置到对象的实例。
-----------------------书上写得是
myDataGrid.DataSource=new DataSet(table);
这是怎么回事???

解决方案 »

  1.   

    Data.DataSet(string dataSetName)
    System.Data.DataSet的名称
    不是Table
      

  2.   

    DataSet ds = new DataSet();
    ds.Tables.Add(your_datatable);另外
    DataGrid也接受DataTable实例做为数据源的
      

  3.   

    myDataGrid.DataSource=new DataSet(table);解释:new DataSet(string datasetname)
    这里的方法意思是,新建一个dataset,名字为datasetname.
    如果你要把datatable加到dataset里,还必须.DataSet.Tables.Add(DataTable);
      

  4.   

    DataSet ds = new DataSet("ds");
    ds.Tables.Add(table);
    myDataGrid.DataSource=ds;
    myDataGrid.DataMember = ds.Tables(0).TableName;
      

  5.   

    myDataGrid.DataSource=new DataSet(table);應該是myDataGrid.DataSource=new DataSet(tablename);
      

  6.   

    用ds.Tables.Add(table);把table加到ds里