How to convert a datareader to datatable

jason picture jason · Feb 23, 2012 · Viewed 47.1k times · Source

I have a question about converting a datareader to a datatable. In my code, I have a datareader created in one class and passed to another class that I want to convert it to a datatable.

When I do this, it does not seem to work, as the table remains empty. If I do the conversion in the same function, it works fine.

Its only when I pass the datareader to another function that it stops working. Is this because the dr is closed or something? How do I overcome this problem? Any help would be great.

Answer

Ben picture Ben · Apr 22, 2013

Use DataTable Load() method.

 // Given a DataReader called "reader"
 DataTable dt = new DataTable();
 dt.Load(reader)