如何使用URL將參數(shù)傳遞給報(bào)表
使用網(wǎng)頁(yè)上的報(bào)表時(shí),你往往需要傳輸任何參數(shù)的值。例如,這可以是用于過(guò)濾列表或客戶信息的數(shù)據(jù)。當(dāng)你使用報(bào)表調(diào)用Web表單時(shí),使用URL(Universal Resource Locator,通用資源定位器)傳遞參數(shù)會(huì)更方便也更簡(jiǎn)單。
我們來(lái)看一個(gè)最簡(jiǎn)單的例子。在報(bào)表模板中,有兩個(gè)參數(shù):字符串類型的參數(shù)1,和參數(shù)2:
你必須使用URL傳遞這些參數(shù)的值。
創(chuàng)建一個(gè)Web應(yīng)用程序ASP.Net WebForms。我們?cè)陧?yè)面上放置一個(gè)WebReport組件。將創(chuàng)建的報(bào)表模板添加到項(xiàng)目。右鍵點(diǎn)擊文件夾App_Data并選擇“Add”-> “Existing Item ....”。然后在硬盤上找到報(bào)表文件。并轉(zhuǎn)到C#代碼頁(yè)。首先我們添加庫(kù):
using FastReport.Web; using FastReport;
我使用了加載頁(yè)面事件,因?yàn)樵谶@個(gè)階段報(bào)表還沒(méi)有顯示:
namespace URLParams { public partial class About : Page { protected void Page_Load(object sender, EventArgs e) { //Get parameters from URL string param1 = Request.QueryString["param1"]; string param2 = Request.QueryString["param2"]; //Load report fil into WebReport object WebReport1.ReportFile = "App_Data/URLParams.frx"; //Set value to report parameters WebReport1.Report.SetParameterValue("Param1", param1); WebReport1.Report.SetParameterValue("Param2", param2); } } }
請(qǐng)注意,參數(shù)名稱與報(bào)表模板中的參數(shù)名稱完全匹配:
WebReport1.Report.SetParameterValue("Param1", param1);
該URL本身如下所示:
http://localhost:51838/About?param1=Hello%20World!¶m2=Good%20job!
Request.QueryString();
函數(shù)按名稱查找參數(shù)并返回其值。
第二個(gè)選項(xiàng),不保存項(xiàng)目中的報(bào)表模板:
protected void Page_Load(object sender, EventArgs e) { string param1 = Request.QueryString["param1"]; string param2 = Request.QueryString["param2"]; Report report = new Report(); report.Load("J:/Program Files (x86)/FastReports/FastReport.Net/Demos/Reports/URLParams.frx"); report.SetParameterValue("Param1", param1); report.SetParameterValue("Param2", param2); WebReport1.Report = report; }
在這里,我們創(chuàng)建一個(gè)報(bào)表對(duì)象,加載一個(gè)模板并分配參數(shù)。之后,我們將報(bào)表對(duì)象分配給網(wǎng)頁(yè)報(bào)表對(duì)象。容我再啰嗦一遍。請(qǐng)注意確保WebReport的ReportResourceString屬性為空。
兩種方法都會(huì)指向同一個(gè)結(jié)果:
就是這樣,只需要幾行代碼,你就可以在報(bào)表中使用URL中傳遞的參數(shù)。
產(chǎn)品介紹 | 下載試用 | 優(yōu)惠活動(dòng) | 在線客服 | 聯(lián)系Elyn
推薦閱讀
- FastReport VCL報(bào)表控件開(kāi)發(fā)者手冊(cè)
- FastReport Online Designer中文手冊(cè)
- Fastreport.Net教程2016
- Fastreport.Net用戶手冊(cè)
- FastReport.Net教程2017(持續(xù)更新中···)
- FastReport Online Designer教程2017(持續(xù)更新中···)
- 報(bào)表教程2017(持續(xù)更新中···)
- FastReport.Net v2018.1版本更新已經(jīng)發(fā)布!