共用方式為


PersonalizationProvider 類別

定義

實作個人化提供者的基本功能。

public ref class PersonalizationProvider abstract : System::Configuration::Provider::ProviderBase
public abstract class PersonalizationProvider : System.Configuration.Provider.ProviderBase
type PersonalizationProvider = class
    inherit ProviderBase
Public MustInherit Class PersonalizationProvider
Inherits ProviderBase
繼承
PersonalizationProvider
衍生

備註

這是定義個人化提供者所需功能的抽象基類。 個人化提供者會代表 WebPartPersonalization 實例載入和儲存個人化數據。

基類會定義一些方法的標準行為;只有特別處理基礎數據存放區的方法會標示為抽象。 這可讓開發人員撰寫自定義提供者來與特定數據存放區互動,而不需要重新實作 WebPartPersonalization 類別所使用的標準功能。

給實施者的注意事項

您可以衍生自 PersonalizationProvider ,並只針對這個類別中定義的抽象方法提供實作。 抽象方法會特別處理儲存和載入數據至實體數據存放區,以及數據存放區管理。 自訂提供者必須能夠以區分 Shared 數據與 User 數據的方式操作個人化資訊。 此外,提供者必須依頁面和應用程式分割個人化數據。

PersonalizationProvider 實作與 實作緊密結合 PersonalizationState ,因為某些個人化提供者方法會傳回衍生類別的 PersonalizationState實例。 為了簡化自定義提供者的開發, PersonalizationProvider 基類包含類別直接 WebPartPersonalization 使用的個人化邏輯和串行化/還原串行化邏輯的默認實作。 因此,只為了使用不同的數據存放區來撰寫自定義提供者,只需要實作下列抽象方法:

在所有這些方法中,如果只提供路徑,表示正在操作頁面的共用個人化數據。 如果路徑和用戶名稱都傳遞至方法,則應該處理頁面的用戶個人化數據。 LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[])如果是 ,則應該一律載入指定路徑的共享數據,如果使用者名稱不是 null,則也應該載入路徑的使用者個人化數據。

所有其他抽象方法僅適用於系統管理應用程式,而且不會在運行時間由 Web 元件基礎結構使用。 如需個人化提供者實作的範例,請參閱 SqlPersonalizationProvider 類別。

建構函式

PersonalizationProvider()

初始化 PersonalizationProvider 類別的新執行個體。

屬性

ApplicationName

在衍生類別中覆寫時,取得或設定為提供者設定的應用程式名稱。

Description

取得簡短、易讀的描述,適合顯示在管理工具或其他使用者介面 (UI) 中。

(繼承來源 ProviderBase)
Name

取得用來在設定期間代表提供者的易記名稱。

(繼承來源 ProviderBase)

方法

CreateSupportedUserCapabilities()

傳回 WebPartUserCapability 物件清單,表示 Web 組件控制集使用的一組已知能力。

DetermineInitialScope(WebPartManager, PersonalizationState)

決定初始個人化範圍應當是 Shared 還是 User 範圍。

DetermineUserCapabilities(WebPartManager)

傳回包含 WebPartUserCapability 執行個體的字典,表示目前執行之使用者帳戶的個人化相關能力。

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
FindState(PersonalizationScope, PersonalizationStateQuery, Int32, Int32, Int32)

在衍生類別中覆寫時,根據範圍和特定查詢參數,傳回包含零或多個 PersonalizationStateInfo 衍生物件的集合。

GetCountOfState(PersonalizationScope, PersonalizationStateQuery)

在衍生類別中覆寫時,會傳回特定範圍內存在的基礎資料存放區中的資料列數目。

GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
Initialize(String, NameValueCollection)

初始化設定產生器。

(繼承來源 ProviderBase)
LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[])

在衍生類別中覆寫時,會載入基礎資料存放區中未經處理的個人化資料。

LoadPersonalizationState(WebPartManager, Boolean)

從基礎資料存放區載入未經處理的資料,並將該資料轉換成 PersonalizationState 物件。

MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ResetPersonalizationBlob(WebPartManager, String, String)

在衍生類別中覆寫時,會刪除基礎資料存放區中未經處理的個人化資料。

ResetPersonalizationState(WebPartManager)

將個人化資料重設至基礎資料存放區。

ResetState(PersonalizationScope, String[], String[])

在衍生類別中覆寫時,會根據指定的參數,刪除基礎資料存放區中的個人化狀態。

ResetUserState(String, DateTime)

在衍生類別中覆寫時,會根據指定的參數,刪除基礎資料存放區中的 Web 組件個人化資料。

SavePersonalizationBlob(WebPartManager, String, String, Byte[])

在衍生類別中覆寫時,會將未經處理的個人化資料儲存至基礎資料存放區。

SavePersonalizationState(PersonalizationState)

將個人化資料儲存至資料存放區。

ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

適用於

另請參閱