如何为数据集中的表分配列名?

时间:2013-08-23 14:32:13

标签: c# sql ado.net

我有这段代码

 SqlConnection conn = Database.GetConnection();
        //not sure why doing this bit (bit between this comment and next
        //SqlDataAdapter adapter = new SqlDataAdapter("Select * From CarType", conn);
        DataSet DataSetRentals2 = new DataSet("CustomerSQLTable");

        DataTable table = new DataTable("CustomerSQLTable"); //you can name it
        DataTable table2 = new DataTable("CarRental");
        using (SqlDataAdapter adapter = new SqlDataAdapter())
        {
            adapter.SelectCommand = new SqlCommand("SELECT * FROM Customer", conn);
            conn.Open();
           ///this might brake the code
           /// 
           adapter.Fill(DataSetRentals2,"CustomerSQLTable");
            adapter.SelectCommand = new SqlCommand("SELECT * FROM CarRental", conn);
            adapter.Fill(DataSetRentals2, "CarRental");
                            adapter.Fill(DataSetRentals2, "CarRental");
        }

        CustomerGrid.DataSource = DataSetRentals2;
        CustomerGrid.DataMember = "CustomerSQLTable";

CarRGrid.DataSource = DataSetRentals2.Tables [“CarRental”];             CarRGrid.DataMember =“CarRental”;

老师给了我这段代码,以便在一段关系中链接它们,这样当我点击一个数据网格中的一个客户编号时,它就只返回另一个中的相应记录。

DataRowView selectedRow =
                (DataRowView)CustomerGrid.SelectedRows[0].DataBoundItem;
            DataSetRentals2.Tables["CarRental"].DefaultView.RowFilter =
                "CustomerNo = " + selectedRow.Row["CustomerNo"].ToString();.

所以我认为我需要做的是命名数据集中的列。但我不知道该怎么做。我敢肯定必须有一种方式,我相信你的家伙可以很容易地告诉我。先谢谢你。

2 个答案:

答案 0 :(得分:1)

dataTable.Columns[0].ColumnName = "MyColumnName";

答案 1 :(得分:1)

您的列已有名称。它们由数据库提供。 我猜你的问题在于这一行。如果不是这样,请描述您期望发生的事情,以及实际发生的事情,以便我们更好地为您提供帮助。

CarRGrid.DataSource = DataSetRentals2.Tables["CarRental"];

哪个应该是

CarRGrid.DataSource = DataSetRentals2;