LocalReport 類別
代表在本機進行處理和轉譯而並未連接到報表伺服器的報表。
繼承階層
System.Object
Microsoft.Reporting.WebForms.Report
Microsoft.Reporting.WebForms.LocalReport
命名空間: Microsoft.Reporting.WebForms
組件: Microsoft.ReportViewer.WebForms (在 Microsoft.ReportViewer.WebForms.dll 中)
語法
'宣告
<SerializableAttribute> _
Public NotInheritable Class LocalReport _
Inherits Report _
Implements ISerializable, IDisposable
'用途
Dim instance As LocalReport
[SerializableAttribute]
public sealed class LocalReport : Report,
ISerializable, IDisposable
[SerializableAttribute]
public ref class LocalReport sealed : public Report,
ISerializable, IDisposable
[<SealedAttribute>]
[<SerializableAttribute>]
type LocalReport =
class
inherit Report
interface ISerializable
interface IDisposable
end
public final class LocalReport extends Report implements ISerializable, IDisposable
LocalReport 型別公開下列成員。
建構函式
名稱 | 說明 | |
---|---|---|
LocalReport | 初始化 LocalReport 類別的新執行個體。 |
上層
屬性
名稱 | 說明 | |
---|---|---|
DataSources | 取得報表所用的資料來源集合。 | |
DisplayName | 取得或設定報表的顯示名稱。 (繼承自 Report。) | |
EnableExternalImages | 指出在報表有外部影像時,是否能轉譯報表。 | |
EnableHyperlinks | 指出在報表含有超連結動作時,是否能轉譯報表。 | |
IsDrillthroughReport | 指出報表是否為鑽研報表。 (繼承自 Report。) | |
IsReadyForRendering | 取得 Boolean 值,這個值表示報表定義和所有參數是否已指定,而且所有資料來源是否已準備好可供使用。 (繼承自 Report。) | |
OriginalParametersToDrillthrough | 如果這個報表是鑽研報表,則傳回從父報表傳遞至這個報表的參數。 | |
ReportEmbeddedResource | 取得或設定報表內嵌資源的名稱。 | |
ReportPath | 取得或設定本機報表的本機檔案系統路徑。 | |
ShowDetailedSubreportMessages | 取得或設定 Boolean 值,這個值表示當子報表發生錯誤時是否應顯示詳細訊息。 |
上層
方法
上層
事件
名稱 | 說明 | |
---|---|---|
SubreportProcessing | 發生在處理子報表時。 |
上層
明確 繼承 實作
名稱 | 說明 | |
---|---|---|
ISerializable.GetObjectData |
上層
備註
LocalReport 類別代表在本機進行處理和轉譯而並未連接到報表伺服器的報表。此類別是 ReportViewer 控制項使用的相同物件,但是也可以當做用來封裝 ReportViewer 控制項之核心功能的非視覺物件來單獨使用。
LocalReport 物件可以從檔案系統或內嵌資源開啟用戶端報表定義 (RDLC) 檔案,或是 RDLC 檔案可以當做 Stream 或 TextReader 提供給它。
LocalReport 物件沒有執行查詢或提取資料的能力;相反地,資料來源必須加入至 DataSources 集合屬性。
LocalReport 物件支援報表參數,但不支援參數提示。
範例
在下列程式碼範例中,LocalReport 物件會用來載入及匯出報表。
protected void Button1_Click(object sender, EventArgs e)
{
Microsoft.Reporting.WebForms.LocalReport lr =
new Microsoft.Reporting.WebForms.LocalReport();
string deviceInfo =
"<DeviceInfo>" +
"<SimplePageHeaders>True</SimplePageHeaders>" +
"</DeviceInfo>";
lr.ReportPath = @"C:\My Reports\Monthly Sales.rdlc";
lr.DataSources.Add(new ReportDataSource("Sales", GetSalesData()));
byte[] bytes = lr.Render("Excel", deviceInfo, out mimeType,
out encoding, out streamids, out warnings);
using (FileStream fs = new FileStream(@"c:\My Reports\Monthly Sales.xls", FileMode.Create))
{
fs.Write(bytes, 0, bytes.Length);
}
}
Protected Sub Button1_Click(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles Button1.Click
Dim warnings As Warning() = Nothing
Dim streamids As String() = Nothing
Dim mimeType As String = Nothing
Dim encoding As String = Nothing
Dim extension As String = Nothing
Dim deviceInfo as string
Dim bytes As Byte()
Dim lr As New Microsoft.Reporting.WebForms.LocalReport
lr.ReportPath = "C:\My Reports\Monthly Sales.rdlc"
lr.DataSources.Add(New ReportDataSource("Sales", GetSalesData()))
deviceInfo = _
"<DeviceInfo><SimplePageHeaders>True</SimplePageHeaders></DeviceInfo>"
bytes = ReportViewer1.LocalReport.Render("Excel", deviceInfo,_
mimeType, encoding, extension, streamids, warnings)
Dim fs As New FileStream("c:\output.xls", FileMode.Create)
fs.Write(bytes, 0, bytes.Length)
End Sub
執行緒安全性
這個型別的任何公用 static (在 Visual Basic 中為 Shared) 成員都是執行緒安全的。並不是所有的執行個體成員都保證可以用於所有的執行緒。