PersonalizationProvider クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
パーソナル化プロバイダーの基本機能を実装します。
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
- 継承
- 派生
注釈
これは、パーソナル化プロバイダーの必要な機能を定義する抽象基本クラスです。 パーソナル化プロバイダーは、インスタンスの代わりに WebPartPersonalization パーソナル化データを読み込んで格納します。
基底クラスは、いくつかのメソッドの標準動作を定義します。基になるデータ ストアを特に処理するメソッドのみが抽象としてマークされます。 これにより、開発者は、 クラスで使用される標準機能を再実装することなく、特定のデータ ストアと対話するカスタム プロバイダーを WebPartPersonalization 作成できます。
注意 (実装者)
から PersonalizationProvider 派生し、このクラスで定義されている抽象メソッドに対してのみ実装を提供できます。 抽象メソッドでは、特に、物理データ ストアへのデータの保存と読み込み、およびデータ ストアの管理が行われます。 カスタム プロバイダーは、データとUserデータを区別Sharedする方法でパーソナル化情報を操作できる必要があります。 さらに、プロバイダーは、ページ別およびアプリケーション別にパーソナル化データをセグメント化する必要があります。
一部の PersonalizationProvider パーソナル化プロバイダー メソッドは、派生クラスの PersonalizationState インスタンスを返すので、 の実装は の PersonalizationState実装と密接に結び付けられます。 カスタム プロバイダーの開発を容易にするために、基底クラスには、 PersonalizationProvider クラスによって直接使用されるパーソナル化ロジックとシリアル化/逆シリアル化ロジックの既定の WebPartPersonalization 実装が含まれています。 その結果、別のデータ ストアを操作する目的でのみカスタム プロバイダーを作成するには、次の抽象メソッドの実装のみが必要です。
GetCountOfState(PersonalizationScope, PersonalizationStateQuery) - このメソッドは、指定されたクエリ パラメーターについて、データベース内のパーソナル化データの行数をカウントできる必要があります。
LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[]) - パスとユーザー名を指定すると、このメソッドは 2 つのバイナリ ラージ オブジェクト (BLOB) をデータベースから読み込みます。1 つは共有データ用の BLOB、もう 1 つはユーザー データ用です。 ユーザー名とパスを指定する場合は、ユーザー名/パス情報を WebPartManager 提供できるページ情報にアクセスするためのコントロールは必要ありません。
ResetPersonalizationBlob(WebPartManager, String, String) - パスとユーザー名を指定すると、このメソッドはデータベース内の対応する行を削除します。 ユーザー名とパスを指定する場合は、ユーザー名/パス情報を WebPartManager 提供できるページ情報にアクセスするためのコントロールは必要ありません。
SavePersonalizationBlob(WebPartManager, String, String, Byte[]) - パスとユーザー名を指定すると、このメソッドは指定された BLOB をデータベースに保存します。 ユーザー名とパスを指定する場合は、ユーザー名/パス情報を WebPartManager 提供できるページ情報にアクセスするためのコントロールは必要ありません。
これらのすべてのメソッドで、パスのみが指定されている場合は、ページの共有パーソナル化データが操作されていることを示します。 パスとユーザー名の両方がメソッドに渡される場合は、ページのユーザーパーソナル化データが処理されます。 の LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[])場合は、指定したパスの共有データを常に読み込む必要があります。また、必要に応じて、ユーザー名が でない null
場合は、パスのユーザーパーソナル化データも読み込む必要があります。
他のすべての抽象メソッドは、管理アプリケーションでのみ使用することを目的としており、実行時に Web パーツ インフラストラクチャでは使用されません。 パーソナル化プロバイダーの実装例については、 クラスを SqlPersonalizationProvider 参照してください。
コンストラクター
PersonalizationProvider() |
PersonalizationProvider クラスの新しいインスタンスを初期化します。 |
プロパティ
ApplicationName |
派生クラスでオーバーライドされると、プロバイダーに対して構成されたアプリケーションの名前を取得または設定します。 |
Description |
管理ツールまたは他のユーザー インターフェイス (UI) での表示に適した、簡単でわかりやすい説明を取得します。 (継承元 ProviderBase) |
Name |
構成時にプロバイダーを参照するために使用される表示名を取得します。 (継承元 ProviderBase) |
メソッド
適用対象
こちらもご覧ください
.NET