Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在asp.net的reportviewer中显示动态生成的数据表?_C#_Asp.net_Webforms_Reportviewer_Rdlc - Fatal编程技术网

C# 如何在asp.net的reportviewer中显示动态生成的数据表?

C# 如何在asp.net的reportviewer中显示动态生成的数据表?,c#,asp.net,webforms,reportviewer,rdlc,C#,Asp.net,Webforms,Reportviewer,Rdlc,我的应用程序中有一个ReportViewer(.rdlc)。我想在Reportviewer中的表对象中显示一个从codebehind动态生成的datatable 如何做到这一点?数据集必须通过代码隐藏发送到报告 我有我的代码隐藏文件 DataTable dt = Session["ReportOnUser"] as DataTable; if (dt.Rows.Count > 0) { ReportDataSource rds = new ReportDataSou

我的应用程序中有一个
ReportViewer(.rdlc)
。我想在Reportviewer中的表对象中显示一个从codebehind动态生成的
datatable

如何做到这一点?数据集必须通过代码隐藏发送到报告

我有我的代码隐藏文件

  DataTable dt = Session["ReportOnUser"] as DataTable;
  if (dt.Rows.Count > 0)
  {
      ReportDataSource rds = new ReportDataSource("ReportOnUser", dt);
      ReportViewer1.LocalReport.DataSources.Clear();
      ReportViewer1.LocalReport.DataSources.Add(rds);
      ReportViewer1.LocalReport.Refresh();
  }
aspx文件

 <rsweb:ReportViewer ID="ReportViewer1" runat="server" Width="800px">
    <LocalReport ReportPath="Reports\Report1.rdlc">
        <DataSources>
            <rsweb:ReportDataSource DataSourceId="ReportOnUser" Name="ReportOnUser" />
        </DataSources>
    </LocalReport>
</rsweb:ReportViewer>


我添加了一个没有设计的rdlc文件或xsd文件Report1.rdlc。

上面的代码工作得很好。唯一的问题是添加的“Microsoft.ReportViewer.WebForms”dll的版本不同。

是否有错误?你的想法是对的,你需要设置报告的数据源,这应该是它…我没有得到错误。但是生成的报表没有行。报表上是否有一个tablix来实际显示数据?没有。我只添加了一个空白的.rdlc,这不是win forms,而是asp.NET。您需要在报表中添加一个数据源,并将一个表绑定到该数据源。数据源名称应为“ReportOnUser”。如果您使用向导创建一个新报告,您应该能够从不同的数据源中选择一个数据源,我通常使用对象数据源,并使用一个c#类作为模型