PersonalizationProvider.DetermineInitialScope Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
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 экземпляра.Если предыдущие критерии не выполняются, область вычисляется как значение InitialScope свойства для текущего WebPartManager элемента управления.
После выполнения предыдущих оценок и если область оценивается как Shared область, выполняется следующая обработка:
Если у текущей учетной записи пользователя есть EnterSharedScopeUserCapability возможность, область остается равным Shared.
Если у текущей учетной записи пользователя нет EnterSharedScopeUserCapability возможности, область сбрасывается на User.
Если результатом всех предыдущих область вычислений является Shared, этот результат сохраняется в виде скрытого поля на текущей выполняемой странице. Это механизм, с помощью которого страница может воспроизводить область оценки во время последующих обратных передач.