Datatable as datasource in ReportViewer

24,761

The overload you're using for the constructor of the ReportDataSource object is expecting the name of the data source in that first parameter. You're not supplying this, you need the DataTable name.

Update your code to this and you should be OK:

ReportDataSource source = new ReportDataSource("DataTable1", dt);
Share:
24,761
seeker
Author by

seeker

Updated on July 06, 2022

Comments

  • seeker
    seeker almost 2 years

    I want the table component in reportviewer control to be filled in with data from datatable. In other words, i want to use datatable as source for reportviewer control. I tried to create dataset, added datatable with exact columns that my datatable will have after programmatical fill in. Then I used the following code:

     DataTable dt = new DataTable();
     dt.TableName = "DataTable1";
     conn.Open();
     adapter.Fill(dt);
     ReportViewer1.ProcessingMode=ProcessingMode.Local;
     ReportDataSource source = new ReportDataSource("SampleDs", dt);
     ReportViewer1.LocalReport.DataSources.Clear();
     ReportViewer1.LocalReport.DataSources.Add(source);
     ReportViewer1.DataBind();
     ReportViewer1.LocalReport.Refresh();
    

    However, that does not work. The only message I get is:

    An error has occurred during report processing. SampleDs.

    Can anyone tell me how to solve issue or point out to the refference where full process of creating such report described,

  • seeker
    seeker almost 12 years
    Thanks, worked for me. Another question: if I want to add one more string value to report, is it possible to do without adding this value to datatable?
  • Jay Riggs
    Jay Riggs almost 12 years
    @seeker To be honest I'm not that familiar with ReportViewer so I'm not sure. Try a few things and if you can't get it to work come back to SO and open another question showing your code and the issues you're encountering. Of course it's pretty easy to add data to DataTables so maybe you should consider doing that.