Condividi tramite


PersonalizationProvider.FindState Metodo

Definizione

Quando viene sottoposto a override in una classe derivata, restituisce un insieme che contiene zero o più oggetti derivati da PersonalizationStateInfo in base all'ambito e a parametri di query specifici.

public:
 abstract 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 abstract 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);
abstract member FindState : System.Web.UI.WebControls.WebParts.PersonalizationScope * System.Web.UI.WebControls.WebParts.PersonalizationStateQuery * int * int * int -> System.Web.UI.WebControls.WebParts.PersonalizationStateInfoCollection
Public MustOverride Function FindState (scope As PersonalizationScope, query As PersonalizationStateQuery, pageIndex As Integer, pageSize As Integer, ByRef totalRecords As Integer) As PersonalizationStateInfoCollection

Parametri

scope
PersonalizationScope

Oggetto PersonalizationScope che include le informazioni sulla personalizzazione su cui eseguire la query. Questo valore non può essere null.

query
PersonalizationStateQuery

Oggetto PersonalizationStateQuery contenente una query. Il valore può essere null.

pageIndex
Int32

Posizione in cui inizia la query.

pageSize
Int32

Numero di record da restituire.

totalRecords
Int32

Numero totale di record disponibili.

Restituisce

Un oggetto PersonalizationStateInfoCollection contenente zero o più oggetti derivati da PersonalizationStateInfo.

Commenti

Questo metodo è la definizione astratta di un metodo amministrativo per l'esecuzione di query sui dati di personalizzazione. Le implementazioni derivate devono seguire la logica descritta di seguito.

Il set di elementi restituiti è vincolato dai pageIndex parametri e pageSize , dove pageSize imposta il numero di record da restituire e pageIndex imposta i record da restituire. Ad esempio, un pageIndex valore pari a 0 e pageSize 25 restituirà le prime 25 occorrenze, mentre un pageIndex valore pari a 1 e pageSize 25 restituirà occorrenze da 26 a 50. Se si desidera recuperare tutti i record disponibili, impostare su pageIndex 0 e pageSize su MaxValue.

Gli PersonalizationStateInfooggetti derivati da vengono restituiti in ordine alfabetico e ordinati in base a una combinazione dei relativi valori di Path proprietà e Username , entrambi in ordine crescente.

Questo metodo passa i caratteri jolly della query all'archivio dati sottostante. Il supporto per i caratteri jolly dipende attualmente dal modo in cui ogni provider gestisce caratteri come un asterisco (*), un simbolo di percentuale (%) o un carattere di sottolineatura (_).

In genere, per gli archivi dati conformi a SQL, è possibile eseguire una ricerca con caratteri jolly su un percorso parziale con il carattere jolly visualizzato all'inizio, alla fine o al centro del testo della stringa di ricerca nella PathToMatch proprietà . Ad esempio, per trovare tutti i percorsi che iniziano con "~/vdir", la PathToMatch proprietà verrà impostata su "~/vdir%".

Analogamente, una ricerca con caratteri jolly su un nome utente parziale potrebbe includere il carattere jolly in qualsiasi punto nella stringa di testo della UsernameToMatch proprietà. Ad esempio, per trovare tutti i nomi utente che iniziano con "John", il UsernameToMatch parametro sarà simile a "John%".

Si applicano i vincoli di query seguenti:

  • Se viene specificato solo scope e è querynull o tutte le proprietà sui query valori restituiti null o predefiniti, vengono restituiti tutti i record corrispondenti al parametro indicato scope .

  • Se la PathToMatch proprietà non nullè , anche i record restituiti vengono filtrati in base ai percorsi che corrispondono al PathToMatch valore.

  • Se la UsernameToMatch proprietà non nullè , anche i record restituiti vengono filtrati in base ai nomi utente che corrispondono al valore della UsernameToMatch proprietà.

  • Se la UserInactiveSinceDate proprietà non è uguale a MaxValue, i record restituiti vengono filtrati anche per restituire solo i record associati agli utenti inattivi. Il confronto include record in cui la LastActivityDate proprietà è minore o uguale alla UserInactiveSinceDate proprietà .

Si noti che questo metodo non convalida le combinazioni di parametri di query. Ad esempio, il codice può richiedere un set di record di stato di personalizzazione associati a un nome utente specifico nell'ambito condiviso. Poiché i nomi utente non sono associati a informazioni condivise, la raccolta restituita sarebbe vuota.

Le combinazioni di parametri che possono restituire una raccolta non vuota includono:

Si applica a