Reader 关闭时读取无效 - MySqlDataReader C#

Invalid attempt to read when Reader is closed - MySqlDataReader C#

尝试从 DataReader 读取数据时,我的 duplicateNameCheck 方法出现 Invalid attempt to read when Reader is closed 异常。我不确定为什么。非常感谢任何帮助!

public static MySqlConnection GetSqlConnection() {
    MySqlConnection connection = new MySqlConnection(connectionString);

    return connection;
}

public static MySqlDataReader ExecuteReader(string sqlQuery, MySqlConnection connection) {
    using (MySqlCommand command = new MySqlCommand(sqlQuery, connection)) {     
        try {
            connection.Open();                                      
            MySqlDataReader sqlReader = command.ExecuteReader();    

             return sqlReader;                                       
         } catch (Exception ex) {
             MessageBox.Show(ex.Message);                            
             return null;                                            
         }
    }
}

public static bool duplicateNameCheck(string inName) {
    String sqlQuery = "SELECT * FROM Account";    

    using (MySqlDataReader sqlReader = SQLHelper.ExecuteReader(sqlQuery, SQLHelper.GetSqlConnection())) {

        while (sqlReader.Read())
        {                     
            if (inName.Equals(sqlReader[1].ToString(), StringComparison.InvariantCultureIgnoreCase))
            {  
                return true;
            }
        }
    }
    return false;                                       
}

您在尝试使用它生成的 SqlReader 之前处理 SqlCommand。在您完成 reader.

之前,它们都需要保持打开状态