PersonalizationProvider Klasa

Definicja

Implementuje podstawowe funkcje dostawcy personalizacji.

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
Dziedziczenie
PersonalizationProvider
Pochodne

Uwagi

Jest to abstrakcyjna klasa bazowa, która definiuje wymagane funkcje dostawcy personalizacji. Dostawca personalizacji ładuje i przechowuje dane personalizacji w imieniu WebPartPersonalization wystąpienia.

Klasa bazowa definiuje standardowe zachowanie dla wielu metod; tylko te metody, które dotyczą konkretnie bazowego magazynu danych, są oznaczone jako abstrakcyjne. Dzięki temu deweloper może napisać dostawcę niestandardowego do interakcji z określonym magazynem danych bez konieczności ponownego implementowania standardowych funkcji używanych przez klasę WebPartPersonalization .

Uwagi dotyczące implementowania

Można pochodzić z PersonalizationProvider metod abstrakcyjnych zdefiniowanych w tej klasie i dostarczać ich implementacje. Metody abstrakcyjne dotyczą konkretnie zapisywania i ładowania danych do fizycznego magazynu danych oraz administracji magazynem danych. Dostawca niestandardowy musi mieć możliwość manipulowania informacjami o personalizacji w sposób, który odróżnia Shared dane od User danych. Ponadto dostawca musi segmentować dane personalizacji według strony, a także według aplikacji.

Implementacje programu PersonalizationProvider są ściśle powiązane z implementacjami, PersonalizationState ponieważ niektóre metody dostawcy personalizacji zwracają wystąpienia klas pochodnych PersonalizationState. Aby ułatwić opracowywanie niestandardowych dostawców, PersonalizationProvider klasa bazowa zawiera domyślną implementację logiki personalizacji i logiki serializacji/deserializacji, która jest używana bezpośrednio przez klasę WebPartPersonalization . W związku z tym tworzenie dostawcy niestandardowego wyłącznie w celu pracy z innym magazynem danych wymaga implementacji następujących abstrakcyjnych metod:

We wszystkich tych metodach, jeśli podano tylko ścieżkę, oznacza to, że współużytkowane dane personalizacji dla strony są obsługiwane. Jeśli zarówno ścieżka, jak i nazwa użytkownika są przekazywane do metody, dane personalizacji użytkownika dla strony powinny być przekazywane. W przypadku programu LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[])dane udostępnione dla określonej ścieżki powinny być zawsze ładowane, a opcjonalnie dane personalizacji użytkownika dla ścieżki powinny być również ładowane, jeśli nazwa użytkownika nie nulljest nazwą użytkownika .

Wszystkie inne metody abstrakcyjne są przeznaczone tylko do użytku w aplikacjach administracyjnych i nie są używane przez infrastrukturę składników Web Part w czasie wykonywania. Aby zapoznać się z przykładem implementacji dostawcy personalizacji, zobacz klasę SqlPersonalizationProvider .

Konstruktory

PersonalizationProvider()

Inicjuje nowe wystąpienie klasy PersonalizationProvider.

Właściwości

ApplicationName

Po zastąpieniu w klasie pochodnej pobiera lub ustawia nazwę aplikacji skonfigurowanej dla dostawcy.

Description

Pobiera krótki, przyjazny opis odpowiedni do wyświetlania w narzędziach administracyjnych lub innych interfejsach użytkownika (UI).

(Odziedziczone po ProviderBase)
Name

Pobiera przyjazną nazwę używaną do odwoływania się do dostawcy podczas konfiguracji.

(Odziedziczone po ProviderBase)

Metody

CreateSupportedUserCapabilities()

Zwraca listę WebPartUserCapability obiektów reprezentujących zestaw znanych możliwości używanych przez zestaw kontrolek składników Web Part.

DetermineInitialScope(WebPartManager, PersonalizationState)

Określa, czy początkowy zakres personalizacji powinien być Shared zakresem, czy User zakresem.

DetermineUserCapabilities(WebPartManager)

Zwraca słownik zawierający WebPartUserCapability wystąpienia reprezentujące możliwości związane z personalizacją aktualnie wykonywanego konta użytkownika.

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
FindState(PersonalizationScope, PersonalizationStateQuery, Int32, Int32, Int32)

Po zastąpieniu w klasie pochodnej zwraca kolekcję zawierającą zero lub więcej PersonalizationStateInfoobiektów pochodnych na podstawie zakresu i określonych parametrów zapytania.

GetCountOfState(PersonalizationScope, PersonalizationStateQuery)

Po zastąpieniu w klasie pochodnej zwraca liczbę wierszy w bazowym magazynie danych, które istnieją w określonym zakresie.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
Initialize(String, NameValueCollection)

Inicjuje konstruktora konfiguracji.

(Odziedziczone po ProviderBase)
LoadPersonalizationBlobs(WebPartManager, String, String, Byte[], Byte[])

Po zastąpieniu w klasie pochodnej ładuje nieprzetworzone dane personalizacji z bazowego magazynu danych.

LoadPersonalizationState(WebPartManager, Boolean)

Ładuje nieprzetworzone dane z bazowego magazynu danych i konwertuje te dane na PersonalizationState obiekt.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ResetPersonalizationBlob(WebPartManager, String, String)

Po zastąpieniu w klasie pochodnej usuwa nieprzetworzone dane personalizacji z bazowego magazynu danych.

ResetPersonalizationState(WebPartManager)

Resetuje dane personalizacji do bazowego magazynu danych.

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

Po zastąpieniu w klasie pochodnej program usuwa stan personalizacji z bazowego magazynu danych na podstawie określonych parametrów.

ResetUserState(String, DateTime)

Po zastąpieniu w klasie pochodnej program usuwa dane personalizacji składników Web Part z bazowego magazynu danych na podstawie określonych parametrów.

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

Po zastąpieniu w klasie pochodnej zapisuje nieprzetworzone dane personalizacji w bazowym magazynie danych.

SavePersonalizationState(PersonalizationState)

Zapisuje dane personalizacji w magazynie danych.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Dotyczy

Zobacz też