ReportingService2010.ListMySubscriptions(String) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
检索报表服务器或 SharePoint 网站的当前用户为给定目录项创建的订阅列表。
public:
cli::array <ReportService2010::Subscription ^> ^ ListMySubscriptions(System::String ^ ItemPathOrSiteURL);
[System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/ListMySubscriptions", 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 ReportService2010.Subscription[] ListMySubscriptions (string ItemPathOrSiteURL);
[<System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/ListMySubscriptions", 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.ListMySubscriptions : string -> ReportService2010.Subscription[]
Public Function ListMySubscriptions (ItemPathOrSiteURL As String) As Subscription()
参数
- ItemPathOrSiteURL
- String
站点或项的完全限定 URL,其中包括文件名(在 SharePoint 模式下,还有扩展名)。
如果指定报表服务器 URL 或 SharePoint 站点 URL,则返回给定服务器或站点的当前用户的所有订阅。
返回
一个 Subscription 对象的数组,该数组包含报表服务器或 SharePoint 站点的当前用户针对给定目录项的所有订阅。
- 属性
示例
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;
ExtensionSettings extSettings;
string desc;
ActiveState active;
string status;
string eventType;
string matchData;
ParameterValue[] values = null;
Subscription[] subscriptions = null;
ParameterValueOrFieldReference[] extensionParams = null;
try
{
subscriptions =
rs.ListMySubscriptions("http://<Server Name>");
if (subscriptions != null)
{
// Retrieve properties for the first
// subscription in the list.
rs.GetSubscriptionProperties(
subscriptions[0].SubscriptionID,
out extSettings, out desc, out active,
out status, out eventType, out matchData,
out values);
Console.WriteLine("Description: {0}", desc);
Console.WriteLine("Status: {0}", status);
Console.WriteLine("EventType: {0}", eventType);
Console.WriteLine("matchData: {0}", matchData);
Console.WriteLine("Extension: {0}",
extSettings.Extension);
extensionParams = extSettings.ParameterValues;
if (extensionParams != null)
{
foreach (ParameterValueOrFieldReference
extensionParam in extensionParams)
{
Console.WriteLine((
(ParameterValue)extensionParam).Name +
": " + ((ParameterValue)
extensionParam).Value);
}
}
if (values != null)
{
foreach (ParameterValue pv in values)
{
Console.WriteLine("Name: {0}", pv.Name);
Console.WriteLine("Value: {0}", pv.Value);
}
}
}
}
catch (SoapException e)
{
Console.WriteLine(e.Detail.OuterXml);
}
}
}
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 extSettings As ExtensionSettings
Dim desc As String
Dim active As ActiveState
Dim status As String
Dim eventType As String
Dim matchData As String
Dim values As ParameterValue() = Nothing
Dim subscriptions As Subscription() = Nothing
Dim extensionParams As _
ParameterValueOrFieldReference() = Nothing
Try
Dim site As String = "http://<Server Name>"
subscriptions = rs.ListMySubscriptions(site)
If Not (subscriptions Is Nothing) Then
rs.GetSubscriptionProperties( _
subscriptions(0).SubscriptionID, extSettings, _
desc, active, status, eventType, matchData, _
values)
Console.WriteLine("Description: {0}", desc)
Console.WriteLine("Status: {0}", status)
Console.WriteLine("EventType: {0}", eventType)
Console.WriteLine("matchData: {0}", matchData)
Console.WriteLine("Extension: {0}", _
extSettings.Extension)
extensionParams = extSettings.ParameterValues
If Not (extensionParams Is Nothing) Then
Dim extensionParam As _
ParameterValueOrFieldReference
For Each extensionParam In extensionParams
Console.WriteLine((CType(extensionParam, _
ParameterValue).Name + ": " + _
CType(extensionParam, _
ParameterValue).Value))
Next extensionParam
End If
If Not (values Is Nothing) Then
Dim pv As ParameterValue
For Each pv In values
Console.WriteLine("Name: {0}", pv.Name)
Console.WriteLine("Value: {0}", pv.Value)
Next pv
End If
End If
Catch e As SoapException
Console.WriteLine(e.Detail.InnerXml.ToString())
End Try
End Sub
End Class
注解
下表显示了有关此操作的标头和权限信息。
SOAP 标头用法 | (In) TrustedUserHeaderValue (Out) ServerInfoHeaderValue |
本机模式所需权限 | 无 |
SharePoint 模式所需权限 | 无 |
在本机模式下,如果 ItemPathOrSiteURL
是文件夹,则此方法将返回用户拥有的所有订阅,以便在该路径下具有以下权限的报表: ReadAnySubscription 或 ( (ReadSubscription 且用户是订阅所有者,订阅是) 计时订阅。 如果 ItemPathOrSiteURL
是报表,则此方法返回用户拥有的所有订阅,这些订阅满足该报表的同一组权限要求。
在 SharePoint 集成模式下,如果 ItemPathOrSiteURL
是网站或文件夹,则此方法将返回用户拥有的所有订阅,以便在该路径下报告用户具有以下权限: <xref:Microsoft.SharePoint.SPBasePermissions.ManageAlerts> 或 (<xref:Microsoft.SharePoint.SPBasePermissions.CreateAlerts> 且用户是订阅所有者,订阅是定时订阅) 。 如果 ItemPathOrSiteURL
是报表,则此方法返回用户拥有的所有订阅,这些订阅满足该报表的同一组权限要求。
如果未找到给定站点的订阅,则返回空 Subscription 数组。