報表在項目中設計好,發佈到報表服務器後,在日常業務過程中,一般不會直接登錄到報表服務器上去查看報表,而是通過第三方應用進行查看,一來方便系統集成、二來方便權限控制,我們需要通過ASP.NET應用程序來顯示報表,操作過程如下:
創建aspx頁面後,引入ReportViewer組件,兩種方式:(1)手工輸入代碼,一定要注意添加引用、修改web.config;(2)直接從工具箱中拖動到頁面,關於配置都會自動生成。(這個要省事多了),代碼如下:
<%@ Register assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" namespace="Microsoft.Reporting.WebForms" tagprefix="rsweb" %>
<rsweb:ReportViewer ID="ReportViewer1" runat="server" Font-Names="Verdana" Font-Size="8pt" InteractiveDeviceInfos="(集合)" ProcessingMode="Remote" WaitMessageFont-Names="Verdana" WaitMessageFont-Size="14pt"> <ServerReport ReportPath="/xxxx/FromReport" ReportServerUrl="http://localhost/reportserver" /> </rsweb:ReportViewer>
預覽頁面後,卻出現了“在 Web 窗體上報表查看器 Web 控件需要 System.Web.UI.ScriptManager”這樣的錯誤,如圖:
解決方案:
我們直接在頁面中,添加如下代碼:
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
問題解決。