MySqlCommand cmd = new MySqlCommand("select id from table", conn);
MySqlDataReader dr = cmd.ExecuteReader();
例如我得到4行,所以23,3,12,9
我怎么能得到这个整数的数组?
int[] arr = { 23, 3, 12, 9 };
答案 0 :(得分:2)
使用此:
IEnumerable<int> r;
using (reader)
{
r = Read(reader);
}
int[] arr = r.ToArray();
您可以通过各种方式实现该方法:
private static IEnumerable<int> Read(IDataReader reader)
{
IList<int> list = new List<int>();
while (reader.Read())
{
list.Add(reader.GetInt32(0));
}
return list;
}
或(扩展Aghilas的回答):
private static IEnumerable<int> Read(IDataReader reader)
{
while (reader.Read())
{
yield return reader.GetInt32(0);
}
}
答案 1 :(得分:1)
你可以使用yield iterator
while(reader.Read()
{
yield return reader.GetInt32(0);
}