Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# C将MySQL数据库内容存储到列表时出错_C#_Mysql_List_Mysqldatareader - Fatal编程技术网

C# C将MySQL数据库内容存储到列表时出错

C# C将MySQL数据库内容存储到列表时出错,c#,mysql,list,mysqldatareader,C#,Mysql,List,Mysqldatareader,我得到了我不想得到的输出。我认为我的代码是正确的,但是我可能遗漏了一些东西 C代码: try { string mydbConnection = "datasource=localhost;port=3306;username=root;password=Greenford123;"; MySqlConnection connDB = new MySqlConnection(mydbConnection); MySqlCommand cmdDataBase = new MySqlCommand

我得到了我不想得到的输出。我认为我的代码是正确的,但是我可能遗漏了一些东西

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();

您可以使用EF,然后使用类似于if myObject.firstName==myEntity.firstName{doSomething;}的东西。下面是一个从datareader生成列表的示例。可能的重复我仍然得到错误。无法将MySQL转换为字符串。我得到的错误在“mylist.AddcmdDataBase;”行这是因为cmdDataBase是一个命令,您正试图将其添加到字符串列表中。请看本页底部的示例部分:您需要调用DBReader.Read和DBReader.GetStringint length。