Freigeben über


SafeToPrepareAttribute-Klasse

Markiert die Methoden in der Assembly, die sicher ausgeführt werden können, wenn die ExecuteForPrepare-Eigenschaft auf true festgelegt ist.

Vererbungshierarchie

Object
  Attribute
    Microsoft.AnalysisServices.AdomdServer.SafeToPrepareAttribute

Namespace:  Microsoft.AnalysisServices.AdomdServer
Assembly:  msmgdsrv (in msmgdsrv.dll)

Syntax

'Declaration
Public NotInheritable Class SafeToPrepareAttribute _
    Inherits Attribute
'Usage
Dim instance As SafeToPrepareAttribute
public sealed class SafeToPrepareAttribute : Attribute
public ref class SafeToPrepareAttribute sealed : public Attribute
[<SealedAttribute>]
type SafeToPrepareAttribute =  
    class 
        inherit Attribute 
    end
public final class SafeToPrepareAttribute extends Attribute

Der SafeToPrepareAttribute-Typ macht folgende Elemente verfügbar.

Konstruktoren

  Name Beschreibung
Öffentliche Methode SafeToPrepareAttribute Initialisiert eine neue Instanz der SafeToPrepareAttribute-Klasse.

Nach oben

Eigenschaften

  Name Beschreibung
Öffentliche Eigenschaft IsSafeToPrepare Ruft einen Wert ab, der angibt, ob die zugeordnete Methode sicher ausgeführt werden kann, wenn die ExecuteForPrepare-Eigenschaft auf true festgelegt ist.
Öffentliche Eigenschaft TypeId (Geerbt von Attribute.)

Nach oben

Methoden

  Name Beschreibung
Öffentliche Methode {dtor} Gibt alle von SafeToPrepareAttribute verwendeten Ressourcen frei.
Öffentliche Methode Equals (Geerbt von Attribute.)
Öffentliche Methode GetHashCode (Geerbt von Attribute.)
Öffentliche Methode GetType (Geerbt von Object.)
Öffentliche Methode IsDefaultAttribute (Geerbt von Attribute.)
Öffentliche Methode Match (Geerbt von Attribute.)
Öffentliche Methode ToString (Geerbt von Object.)

Nach oben

Explizite Schnittstellenimplementierungen

  Name Beschreibung
Explizite SchnittstellenimplementierungPrivate Methode System#Runtime#InteropServices#_Attribute#GetIDsOfNames (Geerbt von Attribute.)
Explizite SchnittstellenimplementierungPrivate Methode System#Runtime#InteropServices#_Attribute#GetTypeInfo (Geerbt von Attribute.)
Explizite SchnittstellenimplementierungPrivate Methode System#Runtime#InteropServices#_Attribute#GetTypeInfoCount (Geerbt von Attribute.)
Explizite SchnittstellenimplementierungPrivate Methode System#Runtime#InteropServices#_Attribute#Invoke (Geerbt von Attribute.)

Nach oben

Hinweise

Wenn eine benutzerdefinierte Funktion eine DataTable zurückgibt, sollte die benutzerdefinierte Funktion die Ausführung vorbereiten können, indem sie mit auf true festgelegter ExecuteForPrepare-Eigenschaft ausgeführt wird. Zum Vorbereiten der Ausführung sollte die benutzerdefinierte Funktion die Struktur der DataTable bestimmen, die für die Rückgabe benötigt wird, und eine entsprechend strukturierte leere DataTable zurückgeben.

Beispiele

Im folgenden Beispiel wird mit einer einfachen benutzerdefinierten Funktion eine DataTable erstellt. Wenn die benutzerdefinierte Funktion mit auf true festgelegter ExecuteForPrepare-Eigenschaft ausgeführt wird, wird die benutzerdefinierte Funktion mit einer leeren Version der DataTable zurückgegeben. Wenn die UDF mit auf false festgelegter ExecuteForPrepare-Eigenschaft ausgeführt wird, fährt die benutzerdefinierte UDF fort, füllt die DataTable auf und gibt die aufgefüllte DataTable zurück.

[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;
}

Threadsicherheit

Alle öffentlichen static (Shared in Visual Basic)-Elemente dieses Typs sind Threadsicher. Für Instanzelemente wird die Threadsicherheit nicht gewährleistet.

Siehe auch

Verweis

Microsoft.AnalysisServices.AdomdServer-Namespace