ListChildren 方法
获取指定文件夹的子级的列表。
命名空间: ReportService2010
程序集: ReportService2010(在 ReportService2010.dll 中)
语法
声明
<SoapHeaderAttribute("ServerInfoHeaderValue", Direction := SoapHeaderDirection.Out)> _
<SoapHeaderAttribute("TrustedUserHeaderValue")> _
<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/ListChildren", RequestNamespace := "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", _
ResponseNamespace := "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", _
Use := SoapBindingUse.Literal, ParameterStyle := SoapParameterStyle.Wrapped)> _
Public Function ListChildren ( _
ItemPath As String, _
Recursive As Boolean _
) As CatalogItem()
用法
Dim instance As ReportingService2010
Dim ItemPath As String
Dim Recursive As Boolean
Dim returnValue As CatalogItem()
returnValue = instance.ListChildren(ItemPath, _
Recursive)
[SoapHeaderAttribute("ServerInfoHeaderValue", Direction = SoapHeaderDirection.Out)]
[SoapHeaderAttribute("TrustedUserHeaderValue")]
[SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/ListChildren", RequestNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
ResponseNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)]
public CatalogItem[] ListChildren(
string ItemPath,
bool Recursive
)
[SoapHeaderAttribute(L"ServerInfoHeaderValue", Direction = SoapHeaderDirection::Out)]
[SoapHeaderAttribute(L"TrustedUserHeaderValue")]
[SoapDocumentMethodAttribute(L"https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/ListChildren", RequestNamespace = L"https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
ResponseNamespace = L"https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
Use = SoapBindingUse::Literal, ParameterStyle = SoapParameterStyle::Wrapped)]
public:
array<CatalogItem^>^ ListChildren(
String^ ItemPath,
bool Recursive
)
[<SoapHeaderAttribute("ServerInfoHeaderValue", Direction = SoapHeaderDirection.Out)>]
[<SoapHeaderAttribute("TrustedUserHeaderValue")>]
[<SoapDocumentMethodAttribute("https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/ListChildren", RequestNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
ResponseNamespace = "https://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer",
Use = SoapBindingUse.Literal, ParameterStyle = SoapParameterStyle.Wrapped)>]
member ListChildren :
ItemPath:string *
Recursive:bool -> CatalogItem[]
public function ListChildren(
ItemPath : String,
Recursive : boolean
) : CatalogItem[]
参数
- ItemPath
类型:System. . :: . .String
父文件夹的完整路径名。
- Recursive
类型:System. . :: . .Boolean
一个布尔表达式,该表达式指示是否返回指定项下的整个子项树。默认值为 false。
注意 如果在 SharePoint 模式下将此参数设置为 true,将显著降低您的应用程序的性能。
返回值
类型:array<ReportService2010. . :: . .CatalogItem> [] () [] []
一个 CatalogItem 对象的数组。如果不存在任何子项,则此方法返回一个空数组。
注释
The table below shows header and permissions information on this operation.
SOAP Header Usage |
(Out) ServerInfoHeaderValue |
Native Mode Required Permissions |
ReadProperties on Item |
SharePoint Mode Required Permissions |
ViewListItems()()()() |
This method returns only child items that the user has permission to view. The items that are returned may not represent a complete list of child items of the specified parent item.
If this method is called on the root of the report server database with My Reports enabled, the method returns an array of CatalogItem objects containing properties for the folder My Reports. If the user is anonymous and My Reports is enabled, the properties for My Reports are not returned when this method is called on the root.
This method can return the VirtualPath property of items in the report server database that support virtual paths. The virtual path is the path under which a user expects to see the item. For example, a report called "Report1" located in the user's personal My Reports folder has a virtual path equal to "/My Reports". The actual path of the item is /Users/Username/My Reports.
The majority of the properties this method returns are read-only. For more information about item properties in Reporting Services, see 报表服务器项属性.
示例
To compile the following code example, you must reference the Reporting Services WSDL and import certain namespaces. For more information, see Compiling and Running Code Examples. The following code example uses the ListChildren method to read the contents of the root of the report server directory tree, and then stores the first item and its properties as an XML document:
Imports System
Imports System.IO
Imports System.Text
Imports System.Web.Services.Protocols
Imports System.Xml
Imports System.Xml.Serialization
Class Sample
Public Shared Sub Main()
Dim rs As New ReportingService2010()
rs.Credentials = System.Net.CredentialCache.DefaultCredentials
Dim items As CatalogItem() = Nothing
' Retrieve a list of all items from the report server database.
Try
items = rs.ListChildren("/", True)
Catch e As SoapException
Console.WriteLine(e.Detail.InnerXml.ToString())
End Try
' Serialize the contents as an XML document and write the contents to a file.
Try
Dim fs As New FileStream("CatalogItems.xml", FileMode.Create)
Dim writer As New XmlTextWriter(fs, Encoding.Unicode)
Dim serializer As New XmlSerializer(GetType(CatalogItem()))
serializer.Serialize(writer, items)
Console.WriteLine("Server contents successfully written to a file.")
Catch e As Exception
Console.WriteLine(e.Message)
End Try
End Sub 'Main
End Class 'Sample
using System;
using System.IO;
using System.Text;
using System.Web.Services.Protocols;
using System.Xml;
using System.Xml.Serialization;
class Sample
{
public static void Main()
{
ReportingService2010 rs = new ReportingService2010();
rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
CatalogItem[] items = null;
// Retrieve a list of all items from the report server database.
try
{
items = rs.ListChildren("/", true);
}
catch (SoapException e)
{
Console.WriteLine(e.Detail.OuterXml);
}
// Serialize the contents as an XML document and write the contents to a file.
try
{
FileStream fs = new FileStream("CatalogItems.xml", FileMode.Create);
XmlTextWriter writer = new XmlTextWriter(fs, Encoding.Unicode);
XmlSerializer serializer = new XmlSerializer(typeof(CatalogItem[]));
serializer.Serialize(writer, items);
Console.WriteLine("Server contents successfully written to a file.");
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
}
}