在下面的代码中,我尝试填充组合框
while (myReader.Read())
{
string sName = myReader.GetString("profesor"); <--- here is the error
cb_1najprof.Items.Add(sName);
cb_2najprof.Items.Add(sName);
cb_3najprof.Items.Add(sName);
cb_1najsprof.Items.Add(sName);
cb_2najsprof.Items.Add(sName);
cb_3najsprof.Items.Add(sName);
}
当上面的代码运行时,我在指示的行上得到错误cannot convert string to int
。
答案 0 :(得分:0)
GetString
将整数作为参数,而不是字符串。您已使用"profesor"
调用它。尝试使用例如1
来调用它。此整数对应于您要读取的列。
答案 1 :(得分:0)
那是因为你不能将字符串传递给.GetString()方法 [documentation]你必须传递一个int。 int(从零开始)是您要读取的列号。
是的我知道我的文档链接是针对SqlDataReader的,但同样的概念适用于MySqlDataReader
答案 2 :(得分:0)
你可以试试这个..
string sName = myReader.GetString(myReader.GetOrdinal("profesor"));
或
string sName = myReader["profesor"].ToString();
另见相关问题