我得到了我不想得到的输出。我认为我的代码是正确的,但可能有什么我错过了。
C#代码:

try
 {
string mydbConnection = "datasource=localhost;port=3306;username=root;password=Greenford123;";
MySqlConnection connDB = new MySqlConnection(mydbConnection);
MySqlCommand cmdDataBase = new MySqlCommand("SELECT * FROM project.student", connDB);
MySqlDataReader DBReader;
connDB.Open();
DBReader = cmdDataBase.ExecuteReader();
while (DBReader.Read())
{
List<string> mylist = new List<string>();
mylist.Add(DBReader.ToString());

foreach (var item in mylist)
{
MessageBox.Show("The details are " + item);
}
}
connDB.Close();
}
        catch(Exception ex)
        {
            MessageBox.Show("Error! " + ex);
        }

我想做的是将数据库中的内容存储到一个列表中,以便对其执行操作。然后我想输出列表,但是输出不是“字符串”或数据。我得到的结果是:
输出:“详细信息是MySQL.Data.MySqlClient.MySqlDataReader”

最佳答案

台词:

        DBReader = cmdDataBase.ToString();

是错误的。应该是
        DBReader = cmdDataBase.ExecuteReader();

关于c# - C#将MySQL数据库内容存储到列表中时出错,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42449662/

10-12 13:11