我想将读取器从mysqldatareader强制转换为特定对象的列表。所以我使用了函数cast,但它不起作用,我有一个例外。在此处输入图像描述这是objectenter image description的类
3xiyfsfu1#
你不能投 MySqlDataReader 到 List<T> . 您应该使用读取器从数据库中读取记录并创建 KeyError 为添加到列表中的每条记录创建一个对象。像这样:
MySqlDataReader
List<T>
KeyError
List<KeyError> list = new List<KeyError>(); using (MySqlDataReader reader = command.ExecuteReader()) { while (reader.Read()) { list.Add(new KeyError() { StartDate = reader.GetString("StartDate"), StartDate = reader.GetDateTime("ServerDate") //... }); } }
这个 MySqlDataReader 类具有方法,可将结果集中指定列的值作为任何基元c#数据类型获取:https://dev.mysql.com/doc/dev/connector-net/8.0/html/t_mysql_data_mysqlclient_mysqldatareader.htm
1条答案
按热度按时间3xiyfsfu1#
你不能投
MySqlDataReader
到List<T>
. 您应该使用读取器从数据库中读取记录并创建KeyError
为添加到列表中的每条记录创建一个对象。像这样:这个
MySqlDataReader
类具有方法,可将结果集中指定列的值作为任何基元c#数据类型获取:https://dev.mysql.com/doc/dev/connector-net/8.0/html/t_mysql_data_mysqlclient_mysqldatareader.htm