У меня есть два кода. Один работает, а другой по какой-то причине не работает. И тот, который работает, не возвращает все строки.
Не работает:
public IEnumerable<IDataRecord> GetSomeData(string queryText)
{
using (MySqlConnection cn = CreateConnection())
{
using (MySqlCommand cmd = new MySqlCommand(queryText, cn))
{
using (IDataReader rdr = cmd.ExecuteReader())
{
while (rdr.Read())
{
yield return rdr;
}
}
}
}
}
Работает
public IEnumerable<IDataRecord> GetSomeData(string queryText)
{
using (MySqlConnection cn = CreateConnection())
{
using (MySqlCommand cmd = new MySqlCommand(queryText, cn))
{
using (IDataReader rdr = cmd.ExecuteReader())
{
foreach (IDataRecord record in rdr as IEnumerable)
{
yield return record;
}
}
}
}
}