SetBuilder 类

提供用于创建不可变集的功能。

继承层次结构

Object
  Microsoft.AnalysisServices.AdomdServer.SetBuilder

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

语法

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

SetBuilder 类型公开以下成员。

构造函数

  名称 说明
公共方法 SetBuilder() 初始化 SetBuilder 类的新实例。
公共方法 SetBuilder(Tuple) 使用给定的 Tuple 初始化 SetBuilder 类的新实例。

顶部

属性

  名称 说明
公共属性 Count 获取集中 Tuple 对象的数目。
公共属性 Item 获取指定的 Tuple 对象。

顶部

方法

  名称 说明
公共方法 {dtor} 释放 SetBuilder 使用的所有资源。
公共方法 Add Tuple 添加到集。
公共方法 Dispose 释放 SetBuilder 使用的所有资源。
公共方法 Equals (从 Object 继承。)
公共方法 GetHashCode (从 Object 继承。)
公共方法 GetType (从 Object 继承。)
公共方法 ToSet 基于指定的 Tuple 对象获取 Set
公共方法 ToString (从 Object 继承。)

顶部

示例

下面的示例使用一个集和一个指示要返回的元组数的计数,它从该集中随机检索元组,并返回一个最终子集。

public Set RandomSample(Set set, int returnCount)
{
    //Return the original set if there are fewer tuples
    //in the set than the number requested.
    if (set.Tuples.Count <= returnCount)
        return set;

    System.Random r = new System.Random();
    SetBuilder returnSet = new SetBuilder();

    //Retrieve random tuples until the return set is filled.
    int i = set.Tuples.Count;
    foreach (Tuple t in set.Tuples)
    {
        if (r.Next(i) < returnCount)
        {
            returnCount--;
            returnSet.Add(t);
        }
        i--;
        //Stop the loop if we have enough tuples.
        if (returnCount == 0)
            break;
    }
    return returnSet.ToSet();
}

线程安全

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

请参阅

参考

Microsoft.AnalysisServices.AdomdServer 命名空间