Santosh Yadav
Santosh Yadav

Reputation: 51

SqlDataReader convert to List without loop

I can convert SqlDataReader to a list using a loop While(dr.Read()).

But, I need to convert SqlDataReader to a list.

Pseudo code:

con.Open();

string sqlBU = "select top 10 fname, iduser from users";

SqlCommand cmd = new SqlCommand(sqlBU, con);

using (SqlDataReader dr2 = cmd.ExecuteReader())
{
    List<ListOfClass> customers = dr2.ToList();
}

dataGridView1.DataSource = lOfClass;

con.Close();

Class:

 public class ListOfClass
 {
    public string fname { get; set; }
    public string iduser { get; set; }
 }

Upvotes: 1

Views: 1481

Answers (1)

Santosh Yadav
Santosh Yadav

Reputation: 51

var timeSeries = new List<ListOfClass>();  
using (var reader = cmd.ExecuteReader())
{
   if (reader.HasRows)
  {
      timeSeries = reader.Cast<IDataRecord>()
           .Select(r => new ListOfClass
             {
                 fname = (string)r["fname"],
                            iduser = (string)r["iduser"]
             }).ToList();
  }
}

Upvotes: 1

Related Questions