Member クラス

階層、組、レベル、またはメンバ内の単一メンバを表します。

名前空間:  Microsoft.AnalysisServices.AdomdClient
アセンブリ:  Microsoft.AnalysisServices.AdomdClient (Microsoft.AnalysisServices.AdomdClient.dll)

構文

'宣言
Public NotInheritable Class Member _
    Implements IAdomdBaseObject, IMetadataObject, ISubordinateObject
'使用
Dim instance As Member
public sealed class Member : IAdomdBaseObject, 
    IMetadataObject, ISubordinateObject
public ref class Member sealed : IAdomdBaseObject, 
    IMetadataObject, ISubordinateObject
[<SealedAttribute>]
type Member =  
    class
        interface IAdomdBaseObject
        interface IMetadataObject
        interface ISubordinateObject
    end
public final class Member implements IAdomdBaseObject, IMetadataObject, ISubordinateObject

説明

メンバは、基になるリレーショナル データベース内の 1 つ以上のレコードを表す階層内の項目です。メンバは、キューブ内のセル データにアクセスする際に使用する最も低い参照レベルです。

メンバは組を構成するために使用され、組はセットを構成するために使用されます。メンバは階層化されます。つまり、あるメンバに関連付けられた他のメンバが存在します。たとえば、年、月、日という 3 つのレベルを含む時間ディメンションでは、日レベルのメンバは子メンバがないためリーフ メンバです。月レベルの各メンバには少なくとも 28 の日レベルの子メンバがあり、年レベルの各メンバには 12 の月レベルの子メンバがあるので、年および月レベルのメンバは非リーフ メンバです。

Member は、子メンバ (ある場合) を含む Member オブジェクトのコレクションを含め、メンバの説明に必要な情報をカプセル化します。

Member が利用できる情報は、Member を取得した Members コレクションの親によって異なります。Members コレクションは、外部的には、指定した HierarchyTupleLevel、または Member の Member オブジェクトのコレクションを表し、内部的には、HierarchyTupleLevel、または Member の親に応じて次の 2 とおりの方法のうちのいずれかで読み込まれ、管理されます。

  • サーバーからメタデータを取得するため CubeDef を介して親オブジェクトが参照された場合、コレクションは親オブジェクトに定義されるメンバを表します。

  • クエリからメタデータを取得するため CellSet を介して親オブジェクトが参照された場合は、コレクションは親オブジェクトを含むセット (または軸) に対して取得されるメンバを表します。

使用例

次のサブルーチンでは、Hierarchy を受け取り、Members コレクションの繰り返し処理を実行し、各 Member の情報を表示します。

Public Overloads Sub ListMembers(ByRef HierarchyToCheck As Hierarchy)

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

        Try
            Dim memberToCheck As Member

            Debug.WriteLine("Found " & HierarchyToCheck.Members.Count & _
                " member(s) in hierarchy:")

            For Each memberToCheck In HierarchyToCheck.Members
                Debug.WriteLine("Member:  " & memberToCheck.Name)
                Debug.WriteLine("  Caption:          " & _
                    memberToCheck.Caption)
                Debug.WriteLine("  UniqueName:       " & _
                    memberToCheck.UniqueName)

                Debug.WriteLine("  No. of children:  " & _
                    memberToCheck.Children.Count)
            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

継承階層

System. . :: . .Object
  Microsoft.AnalysisServices.AdomdClient..::..Member

スレッド セーフ

この型の public static (Visual Basic では Shared) のメンバーはすべて、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。