asp.net Reporting Service在Web Application中的應用
更新時間:2008年11月26日 12:38:00 作者:
由于我們這個項目中使用微軟的報表服務(Reporting Services)作為報表輸出工具,本人也對它進行一點點研究,雖沒有入木三分,但這點知識至少可以在大部分Reporting Service的場景中應用。
原先剛裝上Reporting Service時還覺得有點神秘,畢竟在做這個項目前還沒有真正接觸這個微軟用于代替水晶報表的報表工具,而且微軟似乎還不滿足于一個報表工具那么簡單。
Reporting Services 是一種基于服務器的新型報表平臺,部署在Microsoft® SQL Server™ 2000基礎上,可用于創(chuàng)建和管理包含來自關系數據源和多維數據源的數據的表格報表、矩陣報表、圖形報表和自由格式報表??梢酝ㄟ^基于 Web 的連接來查看和管理您創(chuàng)建的報表。
Reporting Services 提供了一套完整的服務、工具和應用程序編程接口 (API),您即使不是程序員也可以使用 Reporting Services??梢允褂?Reporting Services 中包含的應用程序和工具來制作、發(fā)布和管理報表。此外,還提供了支持報表生存周期的各個階段的工具或應用程序。程序員可以使用 API 將報表功能擴展或集成到自定義解決方案中。
本文主要簡介Reporting Service開發(fā)中所涉及到的部分技術,首先我們可以從其是一個服務(Service)可知,它提供了Web Service接口,并且允許我們在報表中嵌入代碼(必須是VB .Net),還可以引用基于.Net Framework的程序集。
在此主要講Reporting Service開發(fā)相關技術的二個方面
1.在自定義的應用程序中集成Reporting Service提供的報表服務
生成報表展示組件
要想把Reporting Service的報表(RDL文件)集成到自定義的應用程序中,我們可以通過Reporting Service自帶的一個報表展示組件,它可以通過對sample項目ReportViewer編譯得到,默認為ReportViewer.dll。
我們通過通過對sample項目ReportViewer進行編譯,可以得用于在自定義應用程序集成RDL文件的組件,但如果我們需要在自定義應用程中傳遞參數給報表,用默認編譯得到的ReportViewer.dll組件將不支持。接下來,我們要解決這個問題,如何將在自定義應用程中給報表參數賦值?
private void SetParameter(string name, string value)
{
…
…
}
此方法的作用將是給報表參數設置值,這時大家可能會很高興,因為它提供了一個方法來支持,但當我們看到private時,我們也許高興不起來了,微軟基本安全考慮,默認狀態(tài)下并不把傳遞參數的方法暴露出來。但往往實現應用與安全都是互斥的。
現在我們至少知道如何擴展該功能來達到我們的目的。
public void SetQueryParameter(string Name, string value)
{
this.SetParameter(Name, value);
}
我們新增一個public的方法SetQueryParameter,即可。再重新編繹一下,那么這個組件就具備了參數傳遞功能。
Reporting Services 是一種基于服務器的新型報表平臺,部署在Microsoft® SQL Server™ 2000基礎上,可用于創(chuàng)建和管理包含來自關系數據源和多維數據源的數據的表格報表、矩陣報表、圖形報表和自由格式報表??梢酝ㄟ^基于 Web 的連接來查看和管理您創(chuàng)建的報表。
Reporting Services 提供了一套完整的服務、工具和應用程序編程接口 (API),您即使不是程序員也可以使用 Reporting Services??梢允褂?Reporting Services 中包含的應用程序和工具來制作、發(fā)布和管理報表。此外,還提供了支持報表生存周期的各個階段的工具或應用程序。程序員可以使用 API 將報表功能擴展或集成到自定義解決方案中。
本文主要簡介Reporting Service開發(fā)中所涉及到的部分技術,首先我們可以從其是一個服務(Service)可知,它提供了Web Service接口,并且允許我們在報表中嵌入代碼(必須是VB .Net),還可以引用基于.Net Framework的程序集。
在此主要講Reporting Service開發(fā)相關技術的二個方面
1.在自定義的應用程序中集成Reporting Service提供的報表服務
生成報表展示組件
要想把Reporting Service的報表(RDL文件)集成到自定義的應用程序中,我們可以通過Reporting Service自帶的一個報表展示組件,它可以通過對sample項目ReportViewer編譯得到,默認為ReportViewer.dll。
我們通過通過對sample項目ReportViewer進行編譯,可以得用于在自定義應用程序集成RDL文件的組件,但如果我們需要在自定義應用程中傳遞參數給報表,用默認編譯得到的ReportViewer.dll組件將不支持。接下來,我們要解決這個問題,如何將在自定義應用程中給報表參數賦值?
復制代碼 代碼如下:
private void SetParameter(string name, string value)
{
…
…
}
此方法的作用將是給報表參數設置值,這時大家可能會很高興,因為它提供了一個方法來支持,但當我們看到private時,我們也許高興不起來了,微軟基本安全考慮,默認狀態(tài)下并不把傳遞參數的方法暴露出來。但往往實現應用與安全都是互斥的。
現在我們至少知道如何擴展該功能來達到我們的目的。
復制代碼 代碼如下:
public void SetQueryParameter(string Name, string value)
{
this.SetParameter(Name, value);
}
相關文章
SQL Server 2008 R2:error 26 開啟遠程連接詳解
本篇文章小編為大家介紹,SQL Server 2008 R2:error 26 開啟遠程連接詳解。需要的朋友參考下2013-04-04
ASP.NET Core使用AutoMapper實現實體映射
本文詳細講解了ASP.NET Core使用AutoMapper實現實體映射的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-03-03
ASP.Net WebAPI與Ajax進行跨域數據交互時Cookies數據的傳遞
本文主要介紹了ASP.Net WebAPI與Ajax進行跨域數據交互時Cookies數據傳遞的相關知識。具有很好的參考價值。下面跟著小編一起來看下吧2017-05-05
基于Asp.Net MVC4 Bundle捆綁壓縮技術的介紹
本篇文章,小編將為大家介紹,Asp.Net MVC4 Bundle捆綁壓縮技術,有需要的朋友可以參考一下2013-04-04

