HierarchyCollection 类

Contains a read-only, on-demand collection of Hierarchy objects contained in a Dimension or a Set.

继承层次结构

System. . :: . .Object
  Microsoft.AnalysisServices.AdomdClient..::..HierarchyCollection

命名空间:  Microsoft.AnalysisServices.AdomdClient
程序集:  Microsoft.AnalysisServices.AdomdClient(在 Microsoft.AnalysisServices.AdomdClient.dll 中)

语法

声明
Public NotInheritable Class HierarchyCollection _
    Implements ICollection, IEnumerable
用法
Dim instance As HierarchyCollection
public sealed class HierarchyCollection : ICollection, 
    IEnumerable
public ref class HierarchyCollection sealed : ICollection, 
    IEnumerable
[<SealedAttribute>]
type HierarchyCollection =  
    class
        interface ICollection
        interface IEnumerable
    end
public final class HierarchyCollection implements ICollection, IEnumerable

HierarchyCollection 类型公开以下成员。

属性

  名称 说明
公共属性 Count Gets the number of Hierarchy objects in the collection.
公共属性 IsSynchronized Gets a value indicating whether access to the collection is synchronized (thread safe).
公共属性 Item[ ( [ ( Int32] ) ] ) Gets the specified Hierarchy from the collection by its index. In C#, this property is the indexer for the HierarchyCollection class.
公共属性 Item[ ( [ ( String] ) ] ) Gets the specified Hierarchy from the collection by its name. In C#, this property is the indexer for the HierarchyCollection class.
公共属性 SyncRoot Gets an object that can be used to synchronize access to the collection.

页首

方法

  名称 说明
公共方法 CopyTo Copies the elements of the collection to the specified array.
公共方法 Equals (从 Object 继承。)
受保护方法 Finalize (从 Object 继承。)
公共方法 Find Gets the specified Hierarchy from the collection by its name.
公共方法 GetEnumerator Gets an Enumerator for iterating through the collection.
公共方法 GetHashCode (从 Object 继承。)
公共方法 GetType (从 Object 继承。)
受保护方法 MemberwiseClone (从 Object 继承。)
公共方法 ToString (从 Object 继承。)

页首

显式接口实现

  名称 说明
显式接口实现私有方法 ICollection. . :: . .CopyTo
显式接口实现私有方法 IEnumerable. . :: . .GetEnumerator

页首

注释

While the HierarchyCollection externally represents a collection of Hierarchy objects, the collection is internally loaded and managed in one of two ways, depending on the parent of the collection:

  • If the parent object was referenced as a result of a query, as in the case of a Set referenced from an Axis, the collection represents the members referenced by that query.

  • If the parent object was referenced as a result of a request for metadata, as in the case of a Dimension referenced from a CubeDef, the collection represents the members referenced by the definition of the parent object.

示例

The following subroutine, given a Dimension, iterates through the HierarchyCollection collection and displays information about each hierarchy:

Public Overloads Sub ListHierarchies(ByRef DimToCheck As Dimension)

    ' Check the parameter before performing actions on it.
    If DimToCheck Is Nothing Then
        Throw New System.ArgumentNullException("DimToCheck")
    Else
        ' Iterate through the Hierarchies collection of the
        ' Dimension object.

        Try
            Dim hierToCheck As Hierarchy

            Debug.WriteLine("Found " & DimToCheck.Hierarchies.Count & _
                " hierarchies in dimension:")

            For Each hierToCheck In DimToCheck.Hierarchies
                Debug.WriteLine("Hierarchy:  " & hierToCheck.Name)
                Debug.WriteLine("  Caption:        " & _
                    hierToCheck.Caption)
                Debug.WriteLine("  Description:    " & _
                    hierToCheck.Description)
                Debug.WriteLine("  UniqueName:     " & _
                    hierToCheck.UniqueName)
            Next
        Catch ex As AdomdConnectionException
            ' The connection could not be opened or was disconnected.
            ' This error can occur at any time, if the provider is 
            ' disconnected from the server.
            Debug.WriteLine(ex)
            Throw ex
        Catch ex As AdomdErrorResponseException
            ' A response is received from a provider which indicates an error.
            Debug.WriteLine(ex)
            Throw ex
        Catch ex As AdomdUnknownResponseException
            ' A response has been returned from the provider that 
            ' was not understood.
            Debug.WriteLine(ex)
            Throw ex
        Catch ex As AdomdCacheExpiredException
            ' A cached version of an ADOMD.NET object is no longer valid.
            ' This error is typically raised when reviewing metadata.
            Debug.WriteLine(ex)
            Throw ex
        Catch ex As AdomdException
            ' Any other error raised by ADOMD.NET.
            Debug.WriteLine(ex)
            Throw ex
        Catch ex As Exception
            ' Any other error.
            Debug.WriteLine(ex)
            Throw ex
        End Try
    End If
End Sub

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。不保证所有实例成员都是线程安全的。