dataSet = new DataSet("dataSet");
            DataTable table = new DataTable("Items");
            // Add table to the DataSet
            dataSet.Tables.Add(table);
            // Add columns
            DataColumn c1 = new DataColumn("id",
                Type.GetType("System.Int32"), "");
            DataColumn c2 = new DataColumn("Item",
                Type.GetType("System.Int32"), "");
            table.Columns.Add(c1);
            table.Columns.Add(c2);
         
            
            // DataColumn array to set primary key.
            DataColumn[] keyCol = new DataColumn[1];
            // Set primary key column.
            keyCol[0] = c1;
            table.PrimaryKey = keyCol;
            
           
            // Add ten rows.
            for (int i = 0; i < 10; i++)
            {
                DataRow row = table.NewRow();
                row["id"] = i;
                row["Item"] = i;
                table.Rows.Add(row);
            }
           
            // Accept changes.
            dataSet.AcceptChanges();
            dataGridView1.DataSource = dataSet;
            dataGridView1.DataMember = "Items";
///////////////////////////////////
            DataColumn[] keyCol = new DataColumn[1]; 
请问下各位老师这里的 1 是干嘛用的?

解决方案 »

  1.   

    声明的字段数组:DataColumn[0],DataColumn[1]
      

  2.   

    设置主键列
    DataColumn[] dc = new DataColumn[1];
    ds.Tables["a"].PrimaryKey = dc;
      

  3.   

    我知道是设置主键。。
    new DataColumn[1]; 不会是选择表第一列吧?但是感觉new DataColumn[1]; 和原表关系部大呀?
      

  4.   

    关键是这句话 keyCol[0] = c1;
    DataColumn[] dc = new DataColumn[1];只是开辟一个1列的类型为DataColumn的内存地址
    把c1放入这个地址中,那么实际上是设置C1为主键列
      

  5.   

    弱弱的回答:这个1是说实例化了一个长度为1的DataColumn数组。
      

  6.   

    就这句话的语法而言,就是定义了一个DataColumn数组,1表示数组的长度为1
      

  7.   

    定义了一个DataColumn数组,并设置数组的长度为1
      

  8.   

      //DataColumn array to set primary key.
      DataColumn[] keyCol = new DataColumn[1];
      // Set primary key column.
      keyCol[0] = c1;
      table.PrimaryKey = keyCol;对于表的主键,是一个列的数组,所以你要设置一个表的主键,至少要声明一个列的数组,然后将要设置为主键的列放进去,最后将这个列的数组设置为主键。数据库知识:
    主键是表中唯一标识一行的列或列的组合。