我有这段代码
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();.
所以我认为我需要做的是命名数据集中的列。但我不知道该怎么做。我敢肯定必须有一种方式,我相信你的家伙可以很容易地告诉我。先谢谢你。
答案 0 :(得分:1)
dataTable.Columns[0].ColumnName = "MyColumnName";
答案 1 :(得分:1)
您的列已有名称。它们由数据库提供。 我猜你的问题在于这一行。如果不是这样,请描述您期望发生的事情,以及实际发生的事情,以便我们更好地为您提供帮助。
CarRGrid.DataSource = DataSetRentals2.Tables["CarRental"];
哪个应该是
CarRGrid.DataSource = DataSetRentals2;