SettingsProvider 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
做為應用程式設定架構中衍生自訂設定提供者的基底類別。
public ref class SettingsProvider abstract : System::Configuration::Provider::ProviderBase
public abstract class SettingsProvider : System.Configuration.Provider.ProviderBase
type SettingsProvider = class
inherit ProviderBase
Public MustInherit Class SettingsProvider
Inherits ProviderBase
- 繼承
- 衍生
備註
設定提供者會定義機制,以儲存應用程式設定架構中使用的組態數據。 .NET Framework 包含單一預設設定提供者 ,LocalFileSettingsProvider它會將組態數據儲存至本機檔系統。 不過,您可以從抽象 SettingsProvider 類衍生來建立替代儲存機制。 包裝函式類別使用的提供者是由使用 SettingsProviderAttribute裝飾包裝函式類別所決定。 如果未提供此屬性,則會使用預設值 。 LocalFileSettingsProvider
當您建立自訂設定提供者時,至少必須為此類別的三種方法提供實作: GetPropertyValues、 SetPropertyValues 和 ApplicationName。
針對用戶端應用程式,您也可以實作 介面,將 IApplicationSettingsProvider 更標準化的功能新增至自定義提供者。 這個介面鏡像方法位於 類別中 ApplicationSettingsBase ,主要啟用版本控制支援。
一般而言,您應該將設定提供者設計成單一實例,以避免記憶體資源爭用。 提供者也應該是安全線程,因為它們可以從單一應用程式域中的多個包裝函式實例或從不同網域中的多個應用程式同時呼叫。
設定提供者至少必須辨識三個屬性 : ApplicationScopedSettingAttribute、 UserScopedSettingAttribute和 DefaultSettingValueAttribute。 如需可套用至應用程式設定之屬性的完整清單,請參閱 應用程式設定屬性。 自訂設定提供者應該以下列方式解析套用至設定屬性的屬性:
如果提供者可以履行 屬性所隱含的要求,顯然應該這麼做。
如果提供者無法完成要求,它應該以無訊息方式忽略它。
如果兩個或多個屬性衝突;例如,使用和UserScopedSettingAttribute裝飾ApplicationScopedSettingAttribute的屬性,提供者應該擲回 ConfigurationException。
建構函式
SettingsProvider() |
初始化 SettingsProvider 類別的執行個體。 |
屬性
ApplicationName |
取得或設定目前正在執行之應用程式的名稱。 |
Description |
取得簡短、易讀的描述,適合顯示在管理工具或其他使用者介面 (UI) 中。 (繼承來源 ProviderBase) |
Name |
取得用來在設定期間代表提供者的易記名稱。 (繼承來源 ProviderBase) |
方法
Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
GetHashCode() |
做為預設雜湊函式。 (繼承來源 Object) |
GetPropertyValues(SettingsContext, SettingsPropertyCollection) |
傳回指定之應用程式執行個體和設定屬性群組的設定屬性值集合。 |
GetType() |
取得目前執行個體的 Type。 (繼承來源 Object) |
Initialize(String, NameValueCollection) |
初始化設定產生器。 (繼承來源 ProviderBase) |
MemberwiseClone() |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
SetPropertyValues(SettingsContext, SettingsPropertyValueCollection) |
設定指定屬性設定群組的值。 |
ToString() |
傳回代表目前物件的字串。 (繼承來源 Object) |