Napisałem proste zapytanie do bazy SELECT * FROM main
, postępując zgodnie z poradnikiem udało mi się wyświetlić wszystkie wyniki w następujący sposób:
MySqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 15; i++)
{
sb.Append(reader[i]);
sb.Append(" ");
}
System.Windows.MessageBox.Show(sb.ToString());
}
Jednak chciałem zapisać cały wynik do listy tablic stringów zamiast wywoływania pętli for i MessageBoxa dodając następującą linijkę:
yield return (from o in reader.Cast<object>() select o.ToString()).ToArray();
Po zamianie wyniku tej metody na listę okazuje się, że jest ona wypełniona samymi polami "System.Data.Common.DataRecordInternal"
.
Czy mogę uzyskać pożądany rezultat bez odwołań w stylu reader[i]
?