PersonalizationProvider.DetermineInitialScope Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
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
O WebPartManager que gere a informação de personalização.
- loadedState
- PersonalizationState
A informação do estado de personalização.
Devoluções
A PersonalizationScope indica se o âmbito de personalização atual é User ou Shared.
Exceções
webPartManager é null.
A página associada a webPartManager é null.
Observações
Este método determina se o âmbito atual deve ser Shared ou User, dada uma referência a um WebPartManager controlo e à informação do estado de personalização que já foi carregada anteriormente no ciclo de vida da personalização. Esta informação é usada por uma WebPartPersonalization instância para tarefas subsequentes relacionadas com personalização.
As seguintes regras são usadas para determinar o âmbito da personalização:
Assume-se inicialmente que o âmbito é User.
Se a conta de utilizador atualmente em execução não estiver autenticada, o âmbito é definido para Shared.
Se a conta de utilizador em execução estiver autenticada, ocorrem processamentos adicionais por ordem de precedência:
Se a página estiver em modo de postback, o pedido de página contém informações de âmbito de uma renderização anterior da página. Se essa informação do âmbito indicar que Shared foi utilizado, então o âmbito avalia para Shared.
Se a página em execução atualmente teve controlo transferido para si a partir de outra página (por exemplo, se a transferência de controlo ocorreu devido à chamada do Transfer método; note-se que esta verificação específica não ocorre para publicação entre páginas), e se a página em execução anterior teve uma WebPartManager instância, o âmbito é definido para o valor da
Personalization.Scopepropriedade da instância anterior WebPartManager .Se os critérios anteriores não forem cumpridos, então o âmbito é avaliado para o valor da InitialScope propriedade para o controlo atual WebPartManager .
Após as avaliações anteriores terem sido feitas, e se o âmbito for avaliado dentro Shared do âmbito, ocorre o seguinte processamento:
Se a conta de utilizador atualmente em execução tiver essa EnterSharedScopeUserCapability capacidade, o âmbito mantém-se definido para Shared.
Se a conta de utilizador atualmente em execução não tiver essa EnterSharedScopeUserCapability capacidade, então o âmbito é reiniciado para User.
Se o resultado de todas as avaliações anteriores do âmbito for Shared, este resultado é armazenado como um campo oculto na página atualmente em execução. Este é o mecanismo pelo qual uma página pode reproduzir a avaliação do âmbito durante postbacks subsequentes.