asp.net Reporting Service在Web Application中的應(yīng)用
更新時(shí)間:2008年11月26日 12:38:00 作者:
由于我們這個(gè)項(xiàng)目中使用微軟的報(bào)表服務(wù)(Reporting Services)作為報(bào)表輸出工具,本人也對(duì)它進(jìn)行一點(diǎn)點(diǎn)研究,雖沒(méi)有入木三分,但這點(diǎn)知識(shí)至少可以在大部分Reporting Service的場(chǎng)景中應(yīng)用。
原先剛裝上Reporting Service時(shí)還覺(jué)得有點(diǎn)神秘,畢竟在做這個(gè)項(xiàng)目前還沒(méi)有真正接觸這個(gè)微軟用于代替水晶報(bào)表的報(bào)表工具,而且微軟似乎還不滿(mǎn)足于一個(gè)報(bào)表工具那么簡(jiǎn)單。
Reporting Services 是一種基于服務(wù)器的新型報(bào)表平臺(tái),部署在Microsoft® SQL Server™ 2000基礎(chǔ)上,可用于創(chuàng)建和管理包含來(lái)自關(guān)系數(shù)據(jù)源和多維數(shù)據(jù)源的數(shù)據(jù)的表格報(bào)表、矩陣報(bào)表、圖形報(bào)表和自由格式報(bào)表。可以通過(guò)基于 Web 的連接來(lái)查看和管理您創(chuàng)建的報(bào)表。
Reporting Services 提供了一套完整的服務(wù)、工具和應(yīng)用程序編程接口 (API),您即使不是程序員也可以使用 Reporting Services。可以使用 Reporting Services 中包含的應(yīng)用程序和工具來(lái)制作、發(fā)布和管理報(bào)表。此外,還提供了支持報(bào)表生存周期的各個(gè)階段的工具或應(yīng)用程序。程序員可以使用 API 將報(bào)表功能擴(kuò)展或集成到自定義解決方案中。
本文主要簡(jiǎn)介Reporting Service開(kāi)發(fā)中所涉及到的部分技術(shù),首先我們可以從其是一個(gè)服務(wù)(Service)可知,它提供了Web Service接口,并且允許我們?cè)趫?bào)表中嵌入代碼(必須是VB .Net),還可以引用基于.Net Framework的程序集。
在此主要講Reporting Service開(kāi)發(fā)相關(guān)技術(shù)的二個(gè)方面
1.在自定義的應(yīng)用程序中集成Reporting Service提供的報(bào)表服務(wù)
生成報(bào)表展示組件
要想把Reporting Service的報(bào)表(RDL文件)集成到自定義的應(yīng)用程序中,我們可以通過(guò)Reporting Service自帶的一個(gè)報(bào)表展示組件,它可以通過(guò)對(duì)sample項(xiàng)目ReportViewer編譯得到,默認(rèn)為ReportViewer.dll。
我們通過(guò)通過(guò)對(duì)sample項(xiàng)目ReportViewer進(jìn)行編譯,可以得用于在自定義應(yīng)用程序集成RDL文件的組件,但如果我們需要在自定義應(yīng)用程中傳遞參數(shù)給報(bào)表,用默認(rèn)編譯得到的ReportViewer.dll組件將不支持。接下來(lái),我們要解決這個(gè)問(wèn)題,如何將在自定義應(yīng)用程中給報(bào)表參數(shù)賦值?
private void SetParameter(string name, string value)
{
…
…
}
此方法的作用將是給報(bào)表參數(shù)設(shè)置值,這時(shí)大家可能會(huì)很高興,因?yàn)樗峁┝艘粋€(gè)方法來(lái)支持,但當(dāng)我們看到private時(shí),我們也許高興不起來(lái)了,微軟基本安全考慮,默認(rèn)狀態(tài)下并不把傳遞參數(shù)的方法暴露出來(lái)。但往往實(shí)現(xiàn)應(yīng)用與安全都是互斥的。
現(xiàn)在我們至少知道如何擴(kuò)展該功能來(lái)達(dá)到我們的目的。
public void SetQueryParameter(string Name, string value)
{
this.SetParameter(Name, value);
}
我們新增一個(gè)public的方法SetQueryParameter,即可。再重新編繹一下,那么這個(gè)組件就具備了參數(shù)傳遞功能。
Reporting Services 是一種基于服務(wù)器的新型報(bào)表平臺(tái),部署在Microsoft® SQL Server™ 2000基礎(chǔ)上,可用于創(chuàng)建和管理包含來(lái)自關(guān)系數(shù)據(jù)源和多維數(shù)據(jù)源的數(shù)據(jù)的表格報(bào)表、矩陣報(bào)表、圖形報(bào)表和自由格式報(bào)表。可以通過(guò)基于 Web 的連接來(lái)查看和管理您創(chuàng)建的報(bào)表。
Reporting Services 提供了一套完整的服務(wù)、工具和應(yīng)用程序編程接口 (API),您即使不是程序員也可以使用 Reporting Services。可以使用 Reporting Services 中包含的應(yīng)用程序和工具來(lái)制作、發(fā)布和管理報(bào)表。此外,還提供了支持報(bào)表生存周期的各個(gè)階段的工具或應(yīng)用程序。程序員可以使用 API 將報(bào)表功能擴(kuò)展或集成到自定義解決方案中。
本文主要簡(jiǎn)介Reporting Service開(kāi)發(fā)中所涉及到的部分技術(shù),首先我們可以從其是一個(gè)服務(wù)(Service)可知,它提供了Web Service接口,并且允許我們?cè)趫?bào)表中嵌入代碼(必須是VB .Net),還可以引用基于.Net Framework的程序集。
在此主要講Reporting Service開(kāi)發(fā)相關(guān)技術(shù)的二個(gè)方面
1.在自定義的應(yīng)用程序中集成Reporting Service提供的報(bào)表服務(wù)
生成報(bào)表展示組件
要想把Reporting Service的報(bào)表(RDL文件)集成到自定義的應(yīng)用程序中,我們可以通過(guò)Reporting Service自帶的一個(gè)報(bào)表展示組件,它可以通過(guò)對(duì)sample項(xiàng)目ReportViewer編譯得到,默認(rèn)為ReportViewer.dll。
我們通過(guò)通過(guò)對(duì)sample項(xiàng)目ReportViewer進(jìn)行編譯,可以得用于在自定義應(yīng)用程序集成RDL文件的組件,但如果我們需要在自定義應(yīng)用程中傳遞參數(shù)給報(bào)表,用默認(rèn)編譯得到的ReportViewer.dll組件將不支持。接下來(lái),我們要解決這個(gè)問(wèn)題,如何將在自定義應(yīng)用程中給報(bào)表參數(shù)賦值?
復(fù)制代碼 代碼如下:
private void SetParameter(string name, string value)
{
…
…
}
此方法的作用將是給報(bào)表參數(shù)設(shè)置值,這時(shí)大家可能會(huì)很高興,因?yàn)樗峁┝艘粋€(gè)方法來(lái)支持,但當(dāng)我們看到private時(shí),我們也許高興不起來(lái)了,微軟基本安全考慮,默認(rèn)狀態(tài)下并不把傳遞參數(shù)的方法暴露出來(lái)。但往往實(shí)現(xiàn)應(yīng)用與安全都是互斥的。
現(xiàn)在我們至少知道如何擴(kuò)展該功能來(lái)達(dá)到我們的目的。
復(fù)制代碼 代碼如下:
public void SetQueryParameter(string Name, string value)
{
this.SetParameter(Name, value);
}
您可能感興趣的文章:
- ASP.NET實(shí)現(xiàn)頁(yè)面?zhèn)髦档膸追N方法小結(jié)
- ASP.NET 頁(yè)面?zhèn)髦党S梅椒偨Y(jié)
- asp.net頁(yè)面?zhèn)髦禍y(cè)試實(shí)例代碼(前后臺(tái))
- asp.net 頁(yè)面?zhèn)髦档膸讉€(gè)方法
- ASP.NET 跨頁(yè)面?zhèn)髦捣椒?/a>
- ASP.Net的Application介紹
- ASP.NET中Application和Cache的區(qū)別分析
- ASP.NET內(nèi)置對(duì)象之Application對(duì)象
- ASP.NET頁(yè)面之間傳值的方式之Application實(shí)例詳解
相關(guān)文章
.NET MVC中ViewData,ViewBag和TempData的區(qū)別淺析
這篇文章主要介紹了.NET MVC中ViewData,ViewBag和TempData的區(qū)別,分析了ViewData,ViewBag和TempData在賦值、功能特性等方面的區(qū)別于用法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-01-01VS2010中呈現(xiàn)控件時(shí)出錯(cuò)的解決方法
如何解決“呈現(xiàn)控件時(shí)出錯(cuò)”的問(wèn)題,這篇文章主要介紹了VS2010中出現(xiàn)"呈現(xiàn)控件時(shí)出錯(cuò)"問(wèn)題的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-01-01.Net Core + Nginx實(shí)現(xiàn)項(xiàng)目負(fù)載均衡的全步驟
這篇文章主要給大家介紹了關(guān)于.Net Core + Nginx實(shí)現(xiàn)項(xiàng)目負(fù)載均衡的相關(guān)資料,文中通過(guò)示例代碼以及圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07.Net 對(duì)于PDF生成以及各種轉(zhuǎn)換的操作
這篇文章主要介紹了.Net 對(duì)于PDF生成以及各種轉(zhuǎn)換的操作,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06ASP.NET?MVC5網(wǎng)站開(kāi)發(fā)之用戶(hù)角色的后臺(tái)管理1(七)
這篇文章主要為大家詳細(xì)介紹了ASP.NET?MVC5網(wǎng)站開(kāi)發(fā)之用戶(hù)角色的后臺(tái)管理,感興趣的小伙伴們可以參考一下2016-08-08asp.net窗體的打開(kāi)和關(guān)閉(輸出js)
asp.net窗體的打開(kāi)和關(guān)閉(輸出js),需要的朋友可以參考下。2011-06-06