Festlegen des Elementnamespaces für die GetProperties-Methode
Sie können den ItemNamespaceHeaderSOAP-HeaderReporting Services verwenden, um die Elementeigenschaften über zwei verschiedene Elementbezeichner abzurufen: über den vollständigen Pfad des Elements oder die ID des Elements.
Wenn Sie die GetProperties-Methode abrufen, übergeben Sie normalerweise den vollständigen Pfad des Elements, dessen Eigenschaften Sie abrufen möchten, als Argument. Mithilfe von ItemNamespaceHeader können Sie den SOAP-Header für den Methodenaufruf so einstellen, dass Sie GetProperties verwenden können, indem Sie die ID des Elements als Bezeichner übergeben.
Im folgenden Codebeispiel werden die Werte für die Elementeigenschaften auf Grundlage der ID des Elements abgerufen.
Hinweis
Sie müssen standardmäßig keinen Wert für ItemNamespaceHeader festlegen, wenn Sie den vollständigen Pfadnamen als Elementbezeichner an die GetProperties-Methode übergeben.
Imports System
Imports System.Collections
Class Sample
Sub Main()
Dim rs As New ReportingService2010()
rs.Credentials = System.Net.CredentialCache.DefaultCredentials
rs.Url = "https://<Server Name>/reportserver/ReportService2010.asmx"
Dim items() As CatalogItem
Try
' Need the ID property of items. Normally, you would already have
' this stored somewhere.
items = rs.ListChildren("/AdventureWorks Sample Reports", False)
' Set the item namespace header to be GUID-based
rs.ItemNamespaceHeaderValue = New ItemNamespaceHeader()
rs.ItemNamespaceHeaderValue.ItemNamespace = ItemNamespaceEnum.GUIDBased
' Call GetProperties with item ID.
If Not (items Is Nothing) Then
Dim item As CatalogItem
For Each item In items
Dim properties As [Property]() = rs.GetProperties(item.ID, Nothing)
Dim property As [Property]
For Each property In properties
Console.WriteLine(([property].Name + ": " + [property].Value))
Next property
Console.WriteLine()
Next item
End If
Catch e As Exception
Console.WriteLine((e.Message + ": " + e.StackTrace))
End Try
End Sub 'Main
End Class 'Sample
using System;
using System.Collections;
class Sample
{
static void Main()
{
ReportingService2010 rs = new ReportingService2010();
rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
rs.Url = "https://<Server Name>/reportserver/ReportService2010.asmx";
CatalogItem[] items;
try
{
// Need the ID property of items. Normally, you would already have
// this stored somewhere.
items = rs.ListChildren("/AdventureWorks Sample Reports", false);
// Set the item namespace header to be GUID-based
rs.ItemNamespaceHeaderValue = new ItemNamespaceHeader();
rs.ItemNamespaceHeaderValue.ItemNamespace = ItemNamespaceEnum.GUIDBased;
// Call GetProperties with item ID.
if (items != null)
{
foreach( CatalogItem item in items)
{
Property[] properties = rs.GetProperties(item.ID, null);
foreach (Property property in properties)
{
Console.WriteLine(property.Name + ": " + property.Value);
}
Console.WriteLine();
}
}
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
}
}
Zugehöriger Inhalt
Technische Referenz (SSRS)
Verwenden von SOAP-Headern für Reporting Services
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für