Condividi tramite


SqlPersonalizationProvider.FindState Metodo

Definizione

Restituisce un insieme contenente zero o più oggetti derivati da PersonalizationStateInfo, in base all'ambito e ai parametri specificati.

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

Parametri

scope
PersonalizationScope

Oggetto PersonalizationScope che indica 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.

Eccezioni

pageIndex è minore di zero.

-oppure-

pageSize è minore o uguale a zero.

-oppure-

La combinazione di e pageSize comporta un valore maggiore di pageIndexInt32.MaxValue.

-oppure-

Il valore della proprietà PathToMatch è diverso da null e, dopo l'operazione di taglio, corrisponde a una stringa vuota ("").

-oppure-

La lunghezza della proprietà PathToMatch è maggiore di 256 caratteri quando il valore è diverso da null.

-oppure-

Il valore della proprietà UsernameToMatch è diverso da null e, dopo l'operazione di taglio, corrisponde a una stringa vuota.

-oppure-

La lunghezza della proprietà UsernameToMatch è maggiore di 256 caratteri quando il valore è diverso da null.

L'elemento scope specificato non è un valore valido dell'enumerazione PersonalizationScope.

Commenti

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

Gli PersonalizationStateInfooggetti derivati vengono restituiti in ordine alfabetico ordinati in base Path a e , Usernameentrambi in ordine crescente.

Questo metodo passa i caratteri jolly di query all'archivio dati sottostante. Il supporto per i caratteri jolly dipende attualmente dal modo in cui ogni provider gestisce i caratteri, ad esempio un asterisco (*), un simbolo 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 "~/approot", la PathToMatch proprietà verrà impostata su "~/approot%".

Analogamente, una ricerca con caratteri jolly su un nome utente parziale potrebbe avere il carattere jolly visualizzato 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%".

I vincoli di query seguenti si applicano:

  • Se viene specificato solo scope , e query o null tutte le proprietà in query caso di restituzione null o valori predefiniti, vengono restituiti tutti i record corrispondenti al parametro indicato scope .

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

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

  • Se la UserInactiveSinceDate proprietà non è uguale a MaxValue, i record restituiti vengono filtrati anche per restituire solo tali 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 hanno il potenziale per restituire una raccolta non vuota includono:

Si applica a