Replacing a DataReader with a DataTable
63,162
Solution 1
Use the DataTable.Load method to fill your table with values from the SqlDataReader:
using (SqlDataReader dr = command.ExecuteReader())
{
var tb = new DataTable();
tb.Load(dr);
return tb;
}
Solution 2
By using a DBDataAdapter
excerpt from ms documentation
// Create the DbDataAdapter.
DbDataAdapter adapter = new DbDataAdapter();
adapter.SelectCommand = command;
// Fill the DataTable.
DataTable table = new DataTable();
adapter.Fill(table);
Related videos on Youtube
Author by
cdub
Updated on July 09, 2022Comments
-
cdub almost 2 years
I'm adapting some code that someone else wrote and need to return a DataTable for time's sake.
I have code like this:
using (SqlCommand command = new SqlCommand(query, conn)) { //add parameters and their values using (SqlDataReader dr = command.ExecuteReader()) { return dr; }
But what's the best way to return a datatable?
-
Demodave over 8 yearsIt says that I cannot create an instance of the abstract class