DataSet ds = new DataSet();
        ds.Tables[0] = dt;
dt是有数据的表格。提示错误:无法对属性或索引器“System.Data.DataTableCollection.this[int]”赋值 -- 它是只读的

解决方案 »

  1.   

    晕 你怎么搞的》》》》》》dt是datatable把。new DataSet().Tables.Add  这样  add方法
      

  2.   

    解决方法:
    用datagrid显示查询结果   
      dataSet11.Tables[0].DefaultView.RowFilter="第一列的列名="+ip;   
      DataGridResult.DataSource=dataSet11.Tables[0].DefaultView   
      如果你的临时dataSet还有其他用途的话,   
      新建一个和dataSet11结构相同的dataset   
      while(discurrentrow!=count)   
      {   
      if(Convert.ToInt32(dataSet11.Tables[0].Rows[discurrentrow][1])==ip)//是查询结果   
      {   
                                                        DataRow   dr=dsTemp1.tables[0].newrow();   
      dr[0]=dataSet11.Tables[0].Rows[discurrentrow][0].tostring();   
                                                            ...   
                                                              每一列的数据都赋值   
      tempcurrentrow++;   
      dsTemp1.tables[0].rows.add(dr);   
      }   
      discurrentrow++;   
      }   
      dataSet11.clear();   
                          dataSet11.merge(dsTemp1);   
      DataGridResult.DataSource   =dataSet11;   
      }   
      

  3.   

    如上所说  要用Add()方法