PersonalizationProvider.DetermineInitialScope Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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
Parametry
- webPartManager
- WebPartManager
Element WebPartManager , który zarządza informacjami o personalizacji.
- loadedState
- PersonalizationState
Informacje o stanie personalizacji.
Zwraca
Wartość wskazująca PersonalizationScope , czy bieżący zakres personalizacji to User , czy Shared.
Wyjątki
Parametr webPartManager ma wartość null.
Strona skojarzona z elementem webPartManager to null.
Uwagi
Ta metoda określa, czy bieżący zakres powinien być Shared lub User, przy użyciu odwołania do WebPartManager kontrolki i informacji o stanie personalizacji, które zostały już załadowane z wcześniejszego cyklu życia personalizacji. Te informacje są używane przez wystąpienie do kolejnych zadań związanych z personalizacją WebPartPersonalization .
Następujące reguły służą do określania zakresu personalizacji:
Początkowo zakłada się, że zakres to User.
Jeśli aktualnie wykonywane konto użytkownika nie jest uwierzytelnione, zakres jest ustawiony na Sharedwartość .
Jeśli aktualnie wykonywane konto użytkownika jest uwierzytelnione, dodatkowe przetwarzanie odbywa się w kolejności pierwszeństwa:
Jeśli strona jest w trybie ogłaszania zwrotnego, żądanie strony zawiera informacje o zakresie z poprzedniego renderowania strony. Jeśli informacje o zakresie wskazują, że Shared zakres został użyty, zakres zostanie obliczony na Sharedwartość .
Jeśli aktualnie wykonująca strona miała kontrolkę przeniesioną do niej z innej strony (na przykład jeśli transfer kontrolki wystąpił z powodu wywołania Transfer metody; należy pamiętać, że to konkretne sprawdzanie nie występuje w przypadku publikowania między stronami), a jeśli wcześniej wykonująca strona miała WebPartManager wystąpienie, zakres jest ustawiony na wartość
Personalization.Scopewłaściwości z poprzedniego WebPartManager wystąpienia.Jeśli poprzednie kryteria nie zostaną spełnione, zakres zostanie obliczony na wartość InitialScope właściwości bieżącej WebPartManager kontrolki.
Po wykonaniu poprzednich ocen, a jeśli zakres zostanie obliczony na Shared zakres, nastąpi następujące przetwarzanie:
Jeśli aktualnie wykonywane konto użytkownika ma EnterSharedScopeUserCapability możliwość, zakres pozostaje ustawiony na Sharedwartość .
Jeśli aktualnie wykonywane konto użytkownika nie ma EnterSharedScopeUserCapability możliwości, zakres zostanie zresetowany do .User
Jeśli wynikiem wszystkich poprzednich ocen zakresu jest Shared, ten wynik jest przechowywany jako ukryte pole na aktualnie wykonywanej stronie. Jest to mechanizm, w którym strona może odtworzyć ocenę zakresu podczas kolejnych popisów zwrotnych.