Bagikan melalui


ReportingService2010.GetItemDefinition(String) Metode

Definisi

Mengambil definisi atau konten untuk item. Metode ini berlaku untuk Reportjenis item , , DatasetModel, Component, Resourcedan DataSource .

public:
 cli::array <System::Byte> ^ GetItemDefinition(System::String ^ ItemPath);
[System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/GetItemDefinition", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)]
[System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)]
[System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")]
public byte[] GetItemDefinition (string ItemPath);
[<System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/GetItemDefinition", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)>]
[<System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)>]
[<System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")>]
member this.GetItemDefinition : string -> byte[]
Public Function GetItemDefinition (ItemPath As String) As Byte()

Parameter

ItemPath
String

URL item yang sepenuhnya memenuhi syarat termasuk nama file dan, dalam mode SharePoint, ekstensi.

Mengembalikan

Byte[]

Definisi item sebagai array byte yang dikodekan Base 64. Untuk informasi selengkapnya tentang jenis data ini, lihat "Struktur Byte" dalam dokumentasi Microsoft .NET Framework.

Atribut

Contoh

using System;  
using System.Collections.Generic;  
using System.IO;  
using System.Text;  
using System.Web;  
using System.Web.Services;  
using System.Web.Services.Protocols;  

class Sample  
{  
    static void Main(string[] args)  
    {  
        ReportingService2010 rs = new ReportingService2010();  
        rs.Url = "http://<Server Name>" +  
            "/_vti_bin/ReportServer/ReportService2010.asmx";  
        rs.Credentials =   
            System.Net.CredentialCache.DefaultCredentials;  

        string reportName = "http://<Server Name>/Docs/Documents" +  
            "/AdventureWorks Sample Reports/Sales Order Detail.rdl";  
        byte[] reportDefinition = null;  
        System.Xml.XmlDocument doc = new System.Xml.XmlDocument();  

        try  
        {  
            reportDefinition = rs.GetItemDefinition(reportName);  
            MemoryStream stream = new MemoryStream(reportDefinition);  

            string myDocumentsFolder =   
                Environment.GetFolderPath(  
                    Environment.SpecialFolder.Personal);  

            doc.Load(stream);  
            doc.Save(Path.Combine(myDocumentsFolder,   
                "Sales Order Detail.rdl"));  
        }  
        catch (SoapException e)  
        {  
            Console.WriteLine(e.Detail.InnerXml.ToString());  
        }  
        catch (IOException e)  
        {  
            Console.WriteLine(e.Message);  
        }  
    }  
}  
Imports System  
Imports System.IO  
Imports System.Text  
Imports System.Web.Services  
Imports System.Web.Services.Protocols  

Class Sample  

    Public Shared Sub Main()  

        Dim rs As New ReportingService2010()  
        rs.Url = "http://<Server Name>" + _  
            "/_vti_bin/ReportServer/ReportService2010.asmx"  
        rs.Credentials = _  
            System.Net.CredentialCache.DefaultCredentials  

        Dim reportName As String = "http://<Server Name>" + _  
            "/Docs/Documents/AdventureWorks Sample Reports" + _  
            "/Sales Order Detail.rdl"  
        Dim reportDefinition As Byte() = Nothing  
        Dim doc As New System.Xml.XmlDocument  

        Try  
            reportDefinition = rs.GetItemDefinition(reportName)  
            Dim stream As New MemoryStream(reportDefinition)  

            Dim myDocumentsFolder As String = _  
                My.Computer.FileSystem.SpecialDirectories.MyDocuments  
            doc.Load(stream)  
            doc.Save(Path.Combine(myDocumentsFolder, _  
                "Sales Order Detail.rdl"))  

        Catch e As SoapException  
            Console.WriteLine(e.Detail.InnerXml.ToString())  
        Catch e As IOException  
            Console.WriteLine(e.Message)  
        End Try  

    End Sub  

End Class  

Keterangan

Tabel di bawah ini memperlihatkan informasi header dan izin pada operasi ini.

Penggunaan Header SOAP (Dalam) TrustedUserHeaderValue

(Keluar) ServerInfoHeaderValue
Izin Yang Diperlukan Mode Asli Tergantung pada jenis item:

- Report, DataSet: ReadReportDefinition
- Resource, Component: ReadContent
- DataSource: ReadContent
- Model: ReadContent
Izin Yang Diperlukan Mode SharePoint <xref:Microsoft.SharePoint.SPBasePermissions.OpenItems>

Berlaku untuk