【问题标题】:use a master report viewer to show all reports in RDLC使用主报表查看器显示 RDLC 中的所有报表
【发布时间】:2015-01-14 05:16:33
【问题描述】:

我正在尝试制作一个报表查看器,它将在同一个查看器中显示所有报表。我曾经为每个 RDLC 制作单独的报表查看器。但这确实是一个漫长的过程。而且有点傻。

我使用表适配器在 App_Code 文件夹中有数据集,我想将该数据集作为 ReportDatasource 和不同报告的用例。但我不知道该怎么做。无论我在互联网上得到什么,都是使用 SQL 命令来完成的。但是我已经在 DataSet 中准备好了连接和存储过程。我想使用那个数据集。

对 .NET 开发非常陌生,如果我不清楚,请见谅。

感谢任何形式的帮助。

【问题讨论】:

  • This 应该有所帮助 - 将所有 RDLC 嵌入到程序集中,并将 LocalReport.ReportEmbeddedResource 设置为资源的完全限定名称。然后添加一个与绑定中定义的同名的ReportDataSource,添加参数,应该就好了。
  • 谢谢。我做到了。问题是我试图从 dataset.xsd 而不是 tableAdapter 获取数据。稍后将尝试组装。非常感谢。:)
  • 答案是here。谢谢@StuartLC。

标签: c# asp.net dataset reportviewer rdlc


【解决方案1】:

你应该这样做:

DataSet ds = SomeMethodToRetrieveDataSet(); // e.g. via DataAdapter
// Set parameters, 
ReportParameter[] parameters = new ReportParameter[...];  
ReportDataSource reportDataSource = new ReportDataSource();
//match the DataSource in the RDLC
reportDataSource.Name = "ReportData"; 
reportDataSource.Value = ds.Tables[0];

// Addparameters to the collection
reportViewer1.LocalReport.SetParameters(parameters); 
reportViewer1.LocalReport.DataSources.Add(reportDataSource);
reportViewer1.DataBind();

【讨论】:

  • 您刚刚从@**StuartLC** 的链接中复制了它。不要这样做。不过还是谢谢。
  • 也许我在需要的时候从那个链接复制了它,但在这个答案中,我从我自己的代码中复制了它。感谢您的建议和-1 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-06-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-05-31
  • 1970-01-01
相关资源
最近更新 更多