C# Microsoft报表查看器ASP.NET
这是我第一次使用Microsoft Report Viewer控件,我认为这很简单,但我一直遇到以下错误:C# Microsoft报表查看器ASP.NET,c#,asp.net,oracle,datatable,reportviewer,C#,Asp.net,Oracle,Datatable,Reportviewer,这是我第一次使用Microsoft Report Viewer控件,我认为这很简单,但我一直遇到以下错误: An error occurred during local report processing. The report definition for report 'Report3' has not been specified Object reference not set to an instance of an object. 我使用的Oracle数据库中有一个视图如下所
An error occurred during local report processing.
The report definition for report 'Report3' has not been specified
Object reference not set to an instance of an object.
我使用的Oracle数据库中有一个视图如下所示:
我遍历GUI,创建一个“新报告”,并将此数据集添加到“表”中。我使用查询生成器创建了“FillByModel”和“GetDataByModel”函数,所有这些函数都从数据库返回正确的数据,但当我运行ReportViewer控件所在的页面时,会出现上述错误。我不知道那个错误意味着什么,在谷歌搜索了它的垃圾并尝试了所有东西之后,我不知道如何解决它
以下是我的ReportViewer对象的.aspx代码:
<rsweb:ReportViewer ID="ReportViewer1" runat="server" Font-Names="Verdana" Font-Size="8pt" WaitMessageFont-Names="Verdana" WaitMessageFont-Size="14pt">
<LocalReport ReportEmbeddedResource="Paint_Reporting.Report3.rdlc">
<DataSources>
<rsweb:ReportDataSource DataSourceId="ObjectDataSource1" Name="LOL" />
</DataSources>
</LocalReport>
</rsweb:ReportViewer>
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" OnSelecting="ObjectDataSource1_Selecting" SelectMethod="GetData" TypeName="PaintModelNumberDetailTableAdapters.PAINT_MODELNUMBERDETAILLISTINGTableAdapter"></asp:ObjectDataSource>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
有人能帮我找出这个错误吗?您必须在代码隐藏中调用它:
reportViewer.LocalReport.ReportPath = "CommonLayer.Reports.SalesByPrice.rdlc";
只需确保相应地更改名称,即将reportViewer.LocalReport.ReportPath
属性设置为RDL
文件的路径
下面是一个完整的讨论,详细介绍了解决此问题所需的选项:
您还可以添加.rdlc的确切路径 例如,我的工作对我来说:
reportViewer.LocalReport.ReportPath = @"C:\Users\miuser\Documents\Visual Studio 2012\Projects\miproyect\SSHD\Views\Summary\Report1.rdlc";
您是否准备了Paint_Reporting.Report3.rdlc文件?是的,它在我的解决方案中。“Report3.rdlc”你解决了吗?如果没有,请发布另一个问题,其中包含提到此问题的另一个错误…我应该在我的页面_Load()上这样做吗?我将尝试一下,看看会发生什么。本地报表处理过程中出错。尚未指定报表“CommonLayer.Reports.Report3”的报表定义,无法找到文件“C:\Projects\Paint Reporting\Paint Reporting\CommonLayer.Reports.Report2.rdlc”。请确保命名空间必须匹配,否则将失败。您提到Report3,然后错误包含Report2。这个名字有点不对劲。。。CommonLayer:您的报表是否在此命名空间内?我不这么认为。它应该都是报告3,我刚刚制作和删除了这么多临时报告,试图让它正常工作,我试图让问题回答者能够理解它。:)我将删除所有临时报告,然后重新开始。