WCF服務(wù)庫(kù)FastReport.Service.dll
FastReport .NET 包含庫(kù) FastReport.Service.dll(僅在 .NET 4.0 包中)。該庫(kù)是 WCF 服務(wù)庫(kù),旨在用于執(zhí)行服務(wù)功能的自定義應(yīng)用程序。
該庫(kù)包含以下函數(shù):
List<ReportItem> GetReportsList();
點(diǎn)擊復(fù)制
返回可用報(bào)告的列表。每個(gè)項(xiàng)目都作為 ReportItem 對(duì)象返回。報(bào)告存儲(chǔ)在運(yùn)行該服務(wù)的服務(wù)器的硬盤上。文件按字母順序排序。
List<ReportItem> GetReportsListByPath(string path);
點(diǎn)擊復(fù)制
List<GearItem> GetGearList();
點(diǎn)擊復(fù)制
Stream GetReport(ReportItem report, GearItem gear);
點(diǎn)擊復(fù)制
返回構(gòu)建報(bào)告的結(jié)果流。參數(shù)“report”和“gear”可以從先前獲得的列表中使用,或者通過創(chuàng)建具有所需屬性的新對(duì)象來(lái)使用。返回的流不支持定位。
讓我們看看列表元素。
報(bào)告項(xiàng)目
public class ReportItem { public string Path; public string Name; public string Description; public Dictionary<string, string> Parameters; }
點(diǎn)擊復(fù)制
路徑 – 服務(wù)器上報(bào)告文件的路徑,相對(duì)于存儲(chǔ)報(bào)告的根文件夾。報(bào)告的文件擴(kuò)展名必須是*.frx。該屬性用于識(shí)別具有進(jìn)一步查詢的特定報(bào)告。
名稱 – 報(bào)告的名稱,取自報(bào)告的元數(shù)據(jù)。如果報(bào)告的元數(shù)據(jù)包含空名稱,則該屬性包含不帶擴(kuò)展名的文件名。此屬性可用于在應(yīng)用程序中構(gòu)建可用報(bào)告的交互式列表(例如:在列表框中)。
描述 – 報(bào)告的描述,取自報(bào)告的元數(shù)據(jù)。
Dictionary<string, string> 參數(shù) – 報(bào)表參數(shù)字典,可以是填充參數(shù),隨后將傳輸?shù)綀?bào)表中。它僅支持設(shè)計(jì)報(bào)告模板時(shí)必須考慮的字符串值。
裝備物品
public class GearItem { public string Name; public Dictionary<string, string> Properties; }
點(diǎn)擊復(fù)制
名稱 – 格式名稱:可能包含以下字符串之一:
姓名 | 描述 |
---|---|
Adobe Acrobat 文件 | |
DOCX | 微軟Word 2007文件 |
XLSX | Microsoft Excel 2007 文件 |
PPTX | 微軟PowerPoint 2007文件 |
RTF | 富文本文件 – 許多文本編輯器都支持 |
消耗臭氧層物質(zhì) | 打開 Office 電子表格文件 |
ODT | 打開 Office 文本文件 |
甲基HT | 壓縮的 HTML 文件與圖像一起,可以在 Internet Explorer 中打開 |
CSV | 逗號(hào)分隔值文件 |
數(shù)據(jù)庫(kù)文件 | 數(shù)據(jù)庫(kù)文件 |
XML | Excel XML 表格 – 無(wú)圖像 |
TXT | 文本文件 |
FPX | FastReport.Net 準(zhǔn)備好的報(bào)告文件 |
Dictionary<string, string> 屬性 – 報(bào)告參數(shù)的字典。請(qǐng)求服務(wù)器列出格式時(shí),可以獲得帶有默認(rèn)值的受支持參數(shù)的完整列表。
創(chuàng)建服務(wù)時(shí),您必須在 App.config 或 Web.config 中添加以下行:
<appSettings> <add key="FastReport.ReportsPath" value="C:\Program files\FastReports\FastReport.Net\Demos\WCF" /> <add key="FastReport.ConnectionStringName" value="FastReportDemo" /> <add key="FastReport.Gear" value="PDF,DOCX,XLSX,PPTX,RTF,ODS,ODT,MHT,CSV,DBF,XML,TXT,FPX" /> </appSettings>
點(diǎn)擊復(fù)制
FastReport.ReportsPath – 指定包含報(bào)告的文件夾的路徑,其中的列表將傳輸?shù)娇蛻舳恕?/span>FastReport.ConnectionStringName – 數(shù)據(jù)庫(kù)的連接字符串名稱,存儲(chǔ)在配置節(jié)中。用于替換報(bào)告模板中的內(nèi)部連接字符串。
FastReport.Gear – 可用格式列表。您可以僅選擇所需的名稱并更改名稱的順序。
FastReport.Service使用示意圖:
而且,如果您已經(jīng)確切知道要報(bào)告的內(nèi)容以及以哪種格式接收?qǐng)?bào)告(這會(huì)減少對(duì)服務(wù)的查詢數(shù)量):
創(chuàng)建在服務(wù)中使用的報(bào)告模板時(shí)需要注意的要點(diǎn):
-
報(bào)告中的對(duì)話框不受支持,將被忽略;
-
每個(gè)報(bào)表必須包含一個(gè)內(nèi)部 DataConnection,其報(bào)表服務(wù)的連接字符串將替換為配置中的字符串。
FastReport.Service.dll 的使用示例可以在文件夾 \Demos\C#\WCFWebService 、 \Demos\C#\WCFWindowsService 、 \Demos\C#\WCFWebClient 、 \Demos\C#\WCFClient 中找到。
示例配置文件服務(wù) - FastReport.Service.dll.config。