PersonalizationProvider.DetermineInitialScope Método

Definición

Determina si el ámbito de personalización inicial debe ser Shared o User.

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

Parámetros

webPartManager
WebPartManager

El objeto WebPartManager que administra la información de personalización.

loadedState
PersonalizationState

La información de estado de personalización.

Devoluciones

Una enumeración PersonalizationScope que indica si el ámbito de personalización actual es User o Shared.

Excepciones

webPartManager es null.

La página asociada a webPartManager es null.

Comentarios

Este método determina si el ámbito actual debe ser Shared o User, dado una referencia a un WebPartManager control y la información de estado de personalización que ya se ha cargado anteriormente en el ciclo de vida de personalización. Esta información la usa una WebPartPersonalization instancia de para las tareas posteriores relacionadas con la personalización.

Las reglas siguientes se usan para determinar el ámbito de personalización:

  • Se supone que el ámbito inicialmente es User.

  • Si la cuenta de usuario que se está ejecutando actualmente no está autenticada, el ámbito se establece Shareden .

  • Si la cuenta de usuario que se está ejecutando actualmente se autentica, se produce un procesamiento adicional en orden de prioridad:

    • Si la página está en modo de postback, la solicitud de página contiene información de ámbito de una representación anterior de la página. Si esa información de ámbito indica que Shared se usó el ámbito, el ámbito se evalúa como Shared.

    • Si la página que se ejecuta actualmente tenía el control transferido desde otra página (por ejemplo, si se produjo la transferencia de control debido a llamar al Transfer método ; tenga en cuenta que esta comprobación específica no se produce para la publicación entre páginas) y si la página que se ejecutó anteriormente tenía una WebPartManager instancia, el ámbito se establece en el valor de la Personalization.Scope propiedad de la instancia anterior WebPartManager .

    • Si no se cumplen los criterios anteriores, el ámbito se evalúa como el valor de la InitialScope propiedad para el control actual WebPartManager .

Una vez realizadas las evaluaciones anteriores y si el ámbito se evalúa como Shared ámbito, se produce el siguiente procesamiento:

  • Si la cuenta de usuario que se está ejecutando actualmente tiene la EnterSharedScopeUserCapability funcionalidad , el ámbito permanece establecido en Shared.

  • Si la cuenta de usuario que se ejecuta actualmente no tiene la EnterSharedScopeUserCapability funcionalidad , el ámbito se restablece a User.

  • Si el resultado de todas las evaluaciones de ámbito anteriores es Shared, este resultado se almacena como un campo oculto en la página que se está ejecutando actualmente. Este es el mecanismo por el que una página puede reproducir la evaluación del ámbito durante los postbacks posteriores.

Se aplica a