PersonalizationProvider.DetermineInitialScope Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
public:
virtual System::Web::UI::WebControls::WebParts::PersonalizationScope DetermineInitialScope(System::Web::UI::WebControls::WebParts::WebPartManager ^ webPartManager, System::Web::UI::WebControls::WebParts::PersonalizationState ^ loadedState);
public virtual System.Web.UI.WebControls.WebParts.PersonalizationScope DetermineInitialScope(System.Web.UI.WebControls.WebParts.WebPartManager webPartManager, System.Web.UI.WebControls.WebParts.PersonalizationState loadedState);
abstract member DetermineInitialScope : System.Web.UI.WebControls.WebParts.WebPartManager * System.Web.UI.WebControls.WebParts.PersonalizationState -> System.Web.UI.WebControls.WebParts.PersonalizationScope
override this.DetermineInitialScope : System.Web.UI.WebControls.WebParts.WebPartManager * System.Web.UI.WebControls.WebParts.PersonalizationState -> System.Web.UI.WebControls.WebParts.PersonalizationScope
Public Overridable Function DetermineInitialScope (webPartManager As WebPartManager, loadedState As PersonalizationState) As PersonalizationScope
Parametri
- webPartManager
- WebPartManager
Oggetto WebPartManager che gestisce le informazioni di personalizzazione.
- loadedState
- PersonalizationState
Informazioni sullo stato di personalizzazione.
Restituisce
Oggetto PersonalizationScope che indica se l'ambito di personalizzazione corrente è User o Shared.
Eccezioni
webPartManager è null.
La pagina associata a webPartManager è null.
Commenti
Questo metodo determina se l'ambito corrente deve essere Shared o User, dato un riferimento a un WebPartManager controllo e le informazioni sullo stato di personalizzazione già caricate in precedenza nel ciclo di vita della personalizzazione. Queste informazioni vengono usate da un'istanza WebPartPersonalization per le successive attività correlate alla personalizzazione.
Per determinare l'ambito di personalizzazione vengono usate le regole seguenti:
Si presuppone che l'ambito sia inizialmente User.
Se l'account utente attualmente in esecuzione non è autenticato, l'ambito viene impostato su Shared.
Se l'account utente attualmente in esecuzione è autenticato, l'elaborazione aggiuntiva viene eseguita in ordine di precedenza:
Se la pagina è in modalità postback, la richiesta di pagina contiene informazioni sull'ambito da un rendering precedente della pagina. Se tali informazioni sull'ambito indicano che Shared è stato usato l'ambito, l'ambito restituisce Shared.
Se la pagina attualmente in esecuzione aveva trasferito il controllo da un'altra pagina (ad esempio, se il trasferimento del controllo si è verificato a causa della chiamata al Transfer metodo; si noti che questo controllo specifico non si verifica per la registrazione tra pagine) e se la pagina in esecuzione in precedenza aveva un'istanza WebPartManager , l'ambito viene impostato sul valore della proprietà dell'istanza
Personalization.Scopeprecedente WebPartManager .Se i criteri precedenti non vengono soddisfatti, l'ambito restituisce il valore della InitialScope proprietà per il controllo corrente WebPartManager .
Dopo aver effettuato le valutazioni precedenti e se l'ambito restituisce Shared l'ambito, si verifica l'elaborazione seguente:
Se l'account utente attualmente in esecuzione ha la EnterSharedScopeUserCapability funzionalità , l'ambito rimane impostato su Shared.
Se l'account utente attualmente in esecuzione non dispone della EnterSharedScopeUserCapability funzionalità , l'ambito viene reimpostato su User.
Se il risultato di tutte le valutazioni dell'ambito precedenti è Shared, questo risultato viene archiviato come campo nascosto nella pagina attualmente in esecuzione. Questo è il meccanismo in cui una pagina può riprodurre la valutazione dell'ambito durante i postback successivi.