Context.ExecuteForPrepare 属性

获取一个值,该值指示是否出于准备目的正在调用该存储过程。

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

语法

声明
Public Shared ReadOnly Property ExecuteForPrepare As Boolean 
    Get
用法
Dim value As Boolean 

value = Context.ExecuteForPrepare
public static bool ExecuteForPrepare { get; }
public:
static property bool ExecuteForPrepare {
    bool get ();
}
static member ExecuteForPrepare : bool
static function get ExecuteForPrepare () : boolean

属性值

类型:Boolean
如果出于准备目的正在调用存储过程,则为 true;否则为 false。

注释

在“准备模式”下调用存储过程和用户定义函数 (UDF),以确定创建最终组合的单元集或行集所需的元数据。 在“准备模式”下运行时,存储过程或 UDF 不应返回数据,而应在构建正常返回的数据类型后立即返回。

如果存储过程和 UDF 采用 SafeToPrepareAttribute 指定属性,则只能在“准备模式”下调用它们。 如果在“准备模式”下调用存储过程但是未指定其属性,将引发异常。

在运行查询前,自动准备返回 DataTables 的 UDF。

示例

在下面的示例中,在处于“准备模式”下时,存储过程在创建数据表后立即返回:

[SafeToPrepare(true)]
public System.Data.DataTable GetPreparedTable()
{
    System.Data.DataTable results = new System.Data.DataTable();
    results.Columns.Add("A", typeof(int));
    results.Columns.Add("B", typeof(string));

    if (Context.ExecuteForPrepare)
    {
        // If preparing, return just the schema with no data
        return results;
    }

    //Otherwise return data
    object[] row = new object[2];
    row[0] = 1;
    row[1] = "A";
    results.Rows.Add(row);

    row[0] = 2;
    row[1] = "B";
    results.Rows.Add(row);

    return results;
}

请参阅

参考

Context 类

Microsoft.AnalysisServices.AdomdServer 命名空间