I want to fill DataTable using DataReader.
I have created object like this
SqlDataReader dr = cmd.ExecuteReader();
if(dr.HasRows)
{
}
If all you want is a ReadOnly DataTable for reporting or web, try this:
conn = new SqlConnection(connString);
string query = "SELECT * FROM Customers";
SqlCommand cmd = new SqlCommand(query, conn);
conn.Open();
SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
DataTable dt = new DataTable();
dt.Load(dr);
Credit where it's due: http://www.dotnetcurry.com/showarticle.aspx?ID=143