这是给出错误的代码
DataSet Music = new DataSet();
Music= DBI.musicall();
comboBox1.DisplayMember= "music1.name"; // with .
comboBox1.ValueMember="Id";
comboBox1.DataSource=Music.Tables[0];
这是正在运行的代码。
DataSet Music = new DataSet();
Music= DBI.musicall();
comboBox1.DisplayMember= "music1name"; // no point -- no .
comboBox1.ValueMember="Id";
comboBox1.DataSource=Music.Tables[0];
public static DataSet musicall()
{
SqlConnection connect= new SqlConnection(connectway);
string sql = "select *from Music";
SqlCommand command= new SqlCommand();
command.CommandText=sql;
command.Connection=connect;
SqlDataAdapter adaptor = new SqlDataAdapter();
adaptor.SelectCommand=command;
DataSet finalDs= new DataSet();
connect.Open();
adaptor.Fill(finalDs);
connect.Close();
return finalDs;
}
当我在列名中使用点(。)时,为什么会遇到此问题。
为什么当我在列名中使用“。”时,组合框会显示错误?
我可以在不使用“。”的情况下解决这个问题,但我不想那样解决这个问题。
答案 0 :(得分:0)
而是这样做:
DataSet Music = new DataSet();
Music= DBI.musicall();
comboBox1.DisplayMember= "music1name";
comboBox1.ValueMember="Id";
comboBox1.DataSource=Music.Tables[0];
public static DataSet musicall()
{
SqlConnection connect= new SqlConnection(connectway);
string sql = "select [music1.name] AS music1name from Music";
SqlCommand command= new SqlCommand();
command.CommandText=sql;
command.Connection=connect;
SqlDataAdapter adaptor = new SqlDataAdapter();
adaptor.SelectCommand=command;
DataSet finalDs= new DataSet();
connect.Open();
adaptor.Fill(finalDs);
connect.Close();
return finalDs;
}