Classe LocalReport
Rappresenta un report di cui vengono eseguiti l'elaborazione e il rendering a livello locale senza connettersi a un server di report.
Spazio dei nomi: Microsoft.Reporting.WebForms
Assembly: Microsoft.ReportViewer.WebForms (in microsoft.reportviewer.webforms.dll)
Sintassi
'Dichiarazione
<SerializableAttribute> _
Public NotInheritable Class LocalReport
Inherits Report
Implements ISerializable
'Utilizzo
Dim instance As LocalReport
[SerializableAttribute]
public sealed class LocalReport : Report, ISerializable
[SerializableAttribute]
public ref class LocalReport sealed : public Report, ISerializable
/** @attribute SerializableAttribute() */
public final class LocalReport extends Report implements ISerializable
SerializableAttribute
public final class LocalReport extends Report implements ISerializable
Note
La classe LocalReport rappresenta i report di cui vengono eseguiti l'elaborazione e il rendering a livello locale senza connettersi a un server di report. Questa classe corrisponde all'oggetto utilizzato dal controllo ReportViewer, ma è inoltre possibile utilizzarla in modo indipendente come oggetto non visivo che incapsula le funzionalità principali di tale controllo.
L'oggetto LocalReport consente di aprire i file di definizione del report del client (con estensione rdlc) dal file system. In alternativa, è possibile specificare il file rdlc per tale oggetto come Stream o TextReader.
L'oggetto LocalReport non consente il recupero di dati o l'esecuzione di query. È necessario specificare i dati per l'oggetto come istanze di DataTables di ADO.NET o come insieme di oggetti business.
L'oggetto LocalReport supporta i parametri di report ma non i parametri di query.
Esempio
Nel frammento di codice seguente viene utilizzato un oggetto LocalReport per il caricamento e l'esportazione di un report.
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); fs.Close(); }}
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) fs.Close()End Sub
Gerarchia di ereditarietà
System.Object
Microsoft.Reporting.WebForms.Report
Microsoft.Reporting.WebForms.LocalReport
Protezione dei thread
Qualsiasi membro statico pubblico (Condiviso in Visual Basic) di questo tipo presenterà la protezione dei thread. Non è garantito che qualsiasi membro di istanza presenterà la protezione dei thread.
Vedere anche
Riferimento
Membri LocalReport
Spazio dei nomi Microsoft.Reporting.WebForms