Bagikan melalui


PersonalizationProvider.DetermineInitialScope Metode

Definisi

Menentukan apakah cakupan personalisasi awal harus Shared atau User cakupan.

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

Parameter

webPartManager
WebPartManager

WebPartManager yang mengelola informasi personalisasi.

loadedState
PersonalizationState

Informasi status personalisasi.

Mengembalikan

Menunjukkan PersonalizationScope apakah cakupan personalisasi saat ini adalah User atau Shared.

Pengecualian

webPartManageradalah null.

Halaman yang terkait dengan webPartManager adalah null.

Keterangan

Metode ini menentukan apakah cakupan saat ini harus Shared atau User, diberikan referensi ke WebPartManager kontrol dan informasi status personalisasi yang telah dimuat dari sebelumnya dalam siklus hidup personalisasi. Informasi ini digunakan oleh WebPartPersonalization instans untuk tugas terkait personalisasi berikutnya.

Aturan berikut digunakan untuk menentukan cakupan personalisasi:

  • Cakupan diasumsikan awalnya adalah User.

  • Jika akun pengguna yang sedang dijalankan tidak diautentikasi, cakupan diatur ke Shared.

  • Jika akun pengguna yang sedang dijalankan diautentikasi, pemrosesan tambahan terjadi dalam urutan prioritas:

    • Jika halaman dalam mode postback, permintaan halaman berisi informasi cakupan dari penyajian halaman sebelumnya. Jika informasi cakupan tersebut menunjukkan bahwa Shared cakupan digunakan, maka cakupan mengevaluasi ke Shared.

    • Jika halaman yang sedang dijalankan memiliki kontrol yang ditransfer ke halaman lain (misalnya, jika transfer kontrol terjadi karena memanggil Transfer metode ; perhatikan bahwa pemeriksaan khusus ini tidak terjadi untuk posting lintas halaman), dan jika halaman yang dieksekusi sebelumnya memiliki WebPartManager instans, cakupan diatur ke nilai Personalization.Scope properti dari instans sebelumnya WebPartManager .

    • Jika kriteria sebelumnya tidak terpenuhi, maka cakupan mengevaluasi ke nilai InitialScope properti untuk kontrol saat ini WebPartManager .

Setelah evaluasi sebelumnya dibuat, dan jika cakupan mengevaluasi ke Shared cakupan, pemrosesan berikut terjadi:

  • Jika akun pengguna yang sedang dijalankan memiliki EnterSharedScopeUserCapability kemampuan, cakupan tetap diatur ke Shared.

  • Jika akun pengguna yang sedang dijalankan tidak memiliki EnterSharedScopeUserCapability kemampuan, maka cakupan diatur ulang ke User.

  • Jika hasil dari semua evaluasi cakupan sebelumnya adalah Shared, hasil ini disimpan sebagai bidang tersembunyi pada halaman yang sedang dijalankan. Ini adalah mekanisme di mana halaman dapat memutar ulang evaluasi cakupan selama postback berikutnya.

Berlaku untuk