我正在尝试将表中的数据显示到组合框(组合框中的用户名),但我对大多数错误进行了排序。 "我的错误"
System.InvalidCastException:指定的强制转换无效。
我在调试程序并打开该表单时只收到此消息
我的代码:
private void add_user_Load(object sender, EventArgs e)
{
DataSet Ds = new DataSet();
// Hide Copy Code
string strConnectionString = "Data Source=JAMES-PC\\SQLEXPRESS;Initial Catalog=login1;Integrated Security=True";
SqlConnection objconnection = new SqlConnection(strConnectionString);
using (SqlCommand cmd = new SqlCommand("SELECT [username] FROM [user1]",
objconnection))
{
using (SqlDataAdapter adapter = new SqlDataAdapter(cmd))
{
adapter.Fill(Ds);
}
}
var empList = Ds.Tables[0].AsEnumerable().Select(dataRow =>
dataRow.Field<int>("username")).ToList();
comboBox1.DropDownStyle = ComboBoxStyle.DropDownList;
comboBox1.DataSource = empList;
comboBox1.SelectedIndex = 0;
// Hide Copy Code
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
textBox1.Text = comboBox1.SelectedItem.ToString();
}
任何帮助都会有很大的帮助,提前谢谢
答案 0 :(得分:1)
dataRow.Field<int>("username")).ToList();
应该是
dataRow.Field<string>("username")).ToList();
您正在将用户名转换为int,这应该是字符串。