Класс 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 Hierarchy from the collection by its specified 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.) | |
Find | Gets the specified Hierarchy from the collection by its name. | |
GetEnumerator | Gets an enumerator for iterating through the collection. | |
GetHashCode | (Производный от Object.) | |
GetType | (Производный от Object.) | |
ToString | (Производный от Object.) |
В начало
Явные реализации интерфейса
Имя | Описание | |
---|---|---|
ICollection.CopyTo | Copies the elements of the HierarchyCollection to an array, starting at a particular array index. | |
IEnumerable.GetEnumerator | Gets an enumerator for iterating through the HierarchyCollection. |
В начало
Замечания
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
Безопасность многопоточности
Любые открытые статический (Shared в Visual Basic) элементы этого типа потокобезопасны. Потокобезопасность с элементами экземпляров не гарантируется.