Freigeben über


SqlPersonalizationProvider.FindState Methode

Definition

Gibt basierend auf dem angegebenen Bereich und den angegebenen Parametern eine Auflistung mit 0 oder mehr von PersonalizationStateInfo abgeleiteten Objekten zurück.

public:
 override System::Web::UI::WebControls::WebParts::PersonalizationStateInfoCollection ^ FindState(System::Web::UI::WebControls::WebParts::PersonalizationScope scope, System::Web::UI::WebControls::WebParts::PersonalizationStateQuery ^ query, int pageIndex, int pageSize, [Runtime::InteropServices::Out] int % totalRecords);
public override System.Web.UI.WebControls.WebParts.PersonalizationStateInfoCollection FindState (System.Web.UI.WebControls.WebParts.PersonalizationScope scope, System.Web.UI.WebControls.WebParts.PersonalizationStateQuery query, int pageIndex, int pageSize, out int totalRecords);
override this.FindState : System.Web.UI.WebControls.WebParts.PersonalizationScope * System.Web.UI.WebControls.WebParts.PersonalizationStateQuery * int * int * int -> System.Web.UI.WebControls.WebParts.PersonalizationStateInfoCollection
Public Overrides Function FindState (scope As PersonalizationScope, query As PersonalizationStateQuery, pageIndex As Integer, pageSize As Integer, ByRef totalRecords As Integer) As PersonalizationStateInfoCollection

Parameter

scope
PersonalizationScope

Ein PersonalizationScope, der die abzufragenden Personalisierungsinformationen angibt. Dieser Wert darf nicht null sein.

query
PersonalizationStateQuery

Eine PersonalizationStateQuery, die eine Abfrage enthält. Dieser Wert kann null sein.

pageIndex
Int32

Die Position, an der die Abfrage gestartet wird.

pageSize
Int32

Die Anzahl der zurückzugebenden Datensätze.

totalRecords
Int32

Die Gesamtzahl der verfügbaren Datensätze.

Gibt zurück

Eine PersonalizationStateInfoCollection mit 0 oder mehr von PersonalizationStateInfo abgeleiteten Objekten.

Ausnahmen

pageIndex ist kleiner als Null.

- oder -

pageSize ist kleiner oder gleich 0 (null).

- oder -

Die Kombination von pageIndex und pageSize führt zu einem Wert, der größer als Int32.MaxValue ist.

- oder -

PathToMatch ist ungleich null und nach dem Verkürzen eine leere Zeichenfolge ("").

- oder -

Die Länge von PathToMatch ist größer als 256 Zeichen, wenn der Wert ungleich null ist.

- oder -

UsernameToMatch ist ungleich null und nach dem Verkürzen eine leere Zeichenfolge.

- oder -

Die Länge von UsernameToMatch ist größer als 256 Zeichen, wenn der Wert ungleich null ist.

Der angegebene scope ist kein gültiger Wert aus der PersonalizationScope-Enumeration.

Hinweise

Der Satz der zurückgegebenen Elemente wird durch die pageSize Parameter und pageIndex eingeschränkt, wobei pageSize die Anzahl der zurückzugebenden Datensätze und pageIndex die zurückzugebenden Datensätze gesteuert werden. Beispielsweise würden ein pageIndex von 0 und ein pageSize von 25 die ersten 25 Vorkommen zurückgeben, während ein pageIndex von 1 und ein pageSize von 25 die Vorkommen 26 bis 50 zurückgeben würden. Wenn Sie alle verfügbaren Datensätze abrufen möchten, legen Sie pageIndex auf 0 und pageSize auf fest MaxValue.

Die PersonalizationStateInfo-abgeleiteten Objekte werden in alphabetischer Reihenfolge zurückgegeben, sortiert nach Path und Username, beide in aufsteigender Reihenfolge.

Diese Methode übergibt Abfrageplatzhalterzeichen an den zugrunde liegenden Datenspeicher. Die Unterstützung von Platzhalterzeichen hängt derzeit davon ab, wie die einzelnen Anbieter Zeichen wie ein Sternchen (*), ein Prozentsymbol (%) oder einen Unterstrich (_) behandeln.

Normalerweise können Sie bei SQL-kompatiblen Datenspeichern eine Feldhaltersuche für einen teiligen Pfad ausführen, wobei das Feldhalterzeichen am Anfang, am Ende oder in der Mitte des Suchzeichenfolgentexts in der PathToMatch Eigenschaft angezeigt wird. Um beispielsweise alle Pfade zu finden, die mit "~/approot" beginnen, wird die PathToMatch -Eigenschaft auf "~/approot%" festgelegt.

Ebenso kann bei einer Feldhaltersuche für einen teilweisen Benutzernamen das Feldhalterzeichen an jedem Punkt in der Textzeichenfolge der UsernameToMatch Eigenschaft angezeigt werden. Um beispielsweise alle Benutzernamen zu finden, die mit "John" beginnen, würde der UsernameToMatch Parameter wie "John%" aussehen.

Es gelten die folgenden Abfrageeinschränkungen:

  • Wenn nur scope angegeben ist und querynull alle Eigenschaften sind, die query entweder null oder Standardwerte zurückgeben, werden alle Datensätze zurückgegeben, die dem angegebenen scope Parameter entsprechen.

  • Wenn die PathToMatch -Eigenschaft nicht nullist, werden die zurückgegebenen Datensätze auch nach Pfaden gefiltert, die dem PathToMatch Eigenschaftswert entsprechen.

  • Wenn die UsernameToMatch -Eigenschaft nicht nullist, werden die zurückgegebenen Datensätze auch nach Benutzernamen gefiltert, die dem UsernameToMatch Eigenschaftswert entsprechen.

  • Wenn die UserInactiveSinceDate Eigenschaft nicht gleich ist, werden auch die zurückgegebenen Datensätze gefiltert, um MaxValuenur die Datensätze zurückzugeben, die inaktiven Benutzern zugeordnet sind. Der Vergleich umfasst Datensätze, bei denen die LastActivityDate Eigenschaft kleiner oder gleich der UserInactiveSinceDate Eigenschaft ist.

Beachten Sie, dass diese Methode keine Kombinationen von Abfrageparametern überprüft. Code kann beispielsweise eine Reihe von Personalisierungszustandsdatensätzen anfordern, die einem bestimmten Benutzernamen im freigegebenen Bereich zugeordnet sind. Da Benutzernamen nicht mit freigegebenen Informationen verknüpft sind, ist die zurückgegebene Sammlung leer.

Zu den Parameterkombinationen, die das Potenzial haben, eine nicht leere Auflistung zurückzugeben, gehören:

Gilt für: