/// <summary>
 /// Execute Reader
 /// </summary>
 /// <param name="conn"></param>
 /// <param name="cmdText"></param>
 /// <param name="parameters"></param>
 /// <param name="commandType"></param>
 /// <returns></returns>
 public static Task <MySqlDataReader> ExecuteReaderAsync(this MySqlConnection conn, string cmdText, MySqlParameter[] parameters, CommandType commandType)
 {
     conn.CheckNull(nameof(conn));
     return(conn.ExecuteReaderAsync(cmdText, parameters, commandType, null));
 }
 /// <summary>
 /// Execute Reader
 /// </summary>
 /// <param name="conn"></param>
 /// <param name="cmdText"></param>
 /// <param name="commandType"></param>
 /// <param name="transaction"></param>
 /// <returns></returns>
 public static Task <MySqlDataReader> ExecuteReaderAsync(this MySqlConnection conn, string cmdText, CommandType commandType, MySqlTransaction transaction)
 {
     conn.CheckNull(nameof(conn));
     return(conn.ExecuteReaderAsync(cmdText, null, commandType, transaction));
 }