Поделиться через


PersonalizationProvider.DetermineInitialScope Метод

Определение

Определяет, должна ли начальная область персонализации быть Shared или 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

Параметры

webPartManager
WebPartManager

Управление WebPartManager сведениями о персонализации.

loadedState
PersonalizationState

Сведения о состоянии персонализации.

Возвращаемое значение

Значение, PersonalizationScope указывающее, является User ли текущая область персонализации или Shared.

Исключения

webPartManager равно null.

Страница, связанная с webPartManager ней null.

Комментарии

Этот метод определяет, должна ли текущая область быть Shared или Userиметь ссылку на WebPartManager элемент управления и сведения о состоянии персонализации, которые уже загружены ранее в жизненном цикле персонализации. Эти сведения используются экземпляром WebPartPersonalization для последующих задач, связанных с персонализацией.

Для определения области персонализации используются следующие правила:

  • Предполагается, что область изначально должна быть User.

  • Если учетная запись пользователя, выполняющаяся в данный момент, не проходит проверку подлинности, для области задано значение Shared.

  • Если в настоящее время выполняется проверка подлинности учетной записи пользователя, дополнительная обработка выполняется в порядке приоритета:

    • Если страница находится в режиме обратной передачи, запрос страницы содержит сведения о области из предыдущей отрисовки страницы. Если эта информация о области указывает, что Shared была использована область, то область вычисляется Shared.

    • Если в настоящее время выполняющаяся страница была передана на другую страницу (например, если произошла передача элемента управления из-за вызова Transfer метода; обратите внимание, что эта конкретная проверка не выполняется для перекрестной публикации), а если ранее выполняющаяся страница имела WebPartManager экземпляр, область задается значением Personalization.Scope свойства из предыдущего WebPartManager экземпляра.

    • Если предыдущие критерии не выполнены, область вычисляет значение свойства для текущего InitialScopeWebPartManager элемента управления.

После выполнения предыдущих вычислений и при оценке Shared области происходит следующая обработка:

  • Если у текущей учетной записи пользователя есть EnterSharedScopeUserCapability возможность, область остается заданной Shared.

  • Если у текущей учетной записи пользователя нет EnterSharedScopeUserCapability возможности, область сбрасывается в User.

  • Если результат всех предыдущих Sharedвычислений области, этот результат сохраняется в виде скрытого поля на текущей странице выполнения. Это механизм, в котором страница может воспроизводить оценку области во время последующих обратных операций.

Применяется к