MemberCollection 类
Gets a read-only, on-demand collection of Member objects contained by a Position, a Level, or a Tuple.
继承层次结构
System.Object
Microsoft.AnalysisServices.AdomdClient.MemberCollection
命名空间: Microsoft.AnalysisServices.AdomdClient
程序集: Microsoft.AnalysisServices.AdomdClient(在 Microsoft.AnalysisServices.AdomdClient.dll 中)
语法
声明
Public NotInheritable Class MemberCollection _
Implements ICollection, IEnumerable
用法
Dim instance As MemberCollection
public sealed class MemberCollection : ICollection,
IEnumerable
public ref class MemberCollection sealed : ICollection,
IEnumerable
[<SealedAttribute>]
type MemberCollection =
class
interface ICollection
interface IEnumerable
end
public final class MemberCollection implements ICollection, IEnumerable
MemberCollection 类型公开以下成员。
属性
名称 | 说明 | |
---|---|---|
![]() |
Count | Gets the number of Member objects in the collection. |
![]() |
IsSynchronized | Gets a value indicating whether access to the collection is synchronized (thread safe). |
![]() |
Item[Int32] | Gets the specified Member from the collection by its index. In C#, this property is the indexer for the MemberCollection class. |
![]() |
Item[String] | Gets the specified Member from the collection by its name. In C#, this property is the indexer for the MemberCollection 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 | Returns the specified Member 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 MemberCollection to the destination array, starting at a particular array index. |
![]() ![]() |
IEnumerable.GetEnumerator | Gets the enumerator that iterates through the MemberCollection. |
页首
注释
Although the MemberCollection externally represents a collection of Member 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 Tuple, the collection represents the members referenced by that query.
If the parent object was referenced as a result of a request for metadata, the collection represents the members referenced by the definition of the parent object.
示例
The following subroutine, given a Level, iterates through the MemberCollection and displays information for each member.
Public Overloads Sub ListMembers(ByRef LevelToCheck As Level)
' Check the parameter before performing actions on it.
If LevelToCheck Is Nothing Then
Throw New System.ArgumentNullException("LevelToCheck")
Else
' Iterate through the Members collection of the
' Level object.
Try
Dim memberToCheck As Member
Debug.WriteLine("Found " & LevelToCheck.GetMembers().Count& _
" member(s) in level:")
For Each memberToCheck In LevelToCheck.GetMembers()
Debug.WriteLine("Member: " & memberToCheck.Name)
Debug.WriteLine(" Caption: " & _
memberToCheck.Caption)
Debug.WriteLine(" UniqueName: " & _
memberToCheck.UniqueName)
' Note that the Children property loads a collection
' of Member objects on demand and
' therefore, slows performance when first
' referenced--you should instead use the
' ChildCount property.
Debug.WriteLine(" No. of children: " & _
memberToCheck.ChildCount)
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) 成员都是线程安全的。不保证所有实例成员都是线程安全的。