Partager via


PersonalizationAdministration Classe

Définition

Implémente la fonctionnalité de gestion et d'administration destinée à la personnalisation WebPart. Cette classe ne peut pas être héritée.

public ref class PersonalizationAdministration abstract sealed
public static class PersonalizationAdministration
type PersonalizationAdministration = class
Public Class PersonalizationAdministration
Héritage
PersonalizationAdministration

Exemples

L’exemple de code suivant montre comment utiliser plusieurs méthodes dans la PersonalizationAdministration classe . Cet exemple se compose d’une page .aspx qui fait référence à un contrôle utilisateur de composants WebPart nommé Persadmin.ascx. Le code suivant fournit le fichier .aspx pour l’exemple.

<%@ Page Language="C#" %>
<%@ Register TagPrefix="admin" TagName="administrator" Src="~/PersAdmin.ascx" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
       <div>
        &nbsp;<asp:LoginName ID="LoginName1" runat="server" />
        &nbsp;
        <asp:LoginStatus ID="LoginStatus1" runat="server" LogoutAction="RedirectToLoginPage" />
        &nbsp;&nbsp;&nbsp;&nbsp;<br />
        <br />
        </div>
        <asp:WebPartManager ID="WebPartManager1" runat="server"></asp:WebPartManager>
        <asp:WebPartZone ID="WebPartZone1" runat="server">
        <ZoneTemplate>
        <admin:administrator id="admincontrol" runat="server" />
        </ZoneTemplate>
        </asp:WebPartZone>
    </form>
</body>
</html>

Ce code fournit le Persadmin.ascx contrôle .

Important

Cet exemple comprend une zone de texte qui accepte une entrée d'utilisateur, ce qui constitue une menace potentielle pour la sécurité. Par défaut, les pages web ASP.NET vérifient que l’entrée d’utilisateur n’inclut pas de script ou d’éléments HTML. Pour plus d’informations, consultez Vue d’ensemble des attaques de script.

<%@ Control Language="C#" ClassName="PersAdmin" %>

<script runat="server">
    WebPartManager _manager;
    string _provider;
    string _userscope;

  void Page_Init(object sender, EventArgs e)
  {
    Page.InitComplete += new EventHandler(InitComplete);
  }

    void InitComplete(object sender, System.EventArgs e)
    {
        _manager = WebPartManager.GetCurrentWebPartManager(Page);
        // <snippet4>
        _provider = PersonalizationAdministration.Provider.Name;
        TextBox1.Text = _provider;
        // </snippet4>
        // <snippet6>
        if (_manager.Personalization.Scope == PersonalizationScope.Shared)
        {
            TextBox2.Text = "Shared Scope";
        }
        else
            TextBox2.Text = "User Scope";
        // </snippet6>
           // <snippet5>
        Label4.Visible = false;
        TextBox4.Text = PersonalizationAdministration.GetCountOfState(PersonalizationScope.User).ToString();
            // </snippet5>
    }

// <snippet2>
    protected void Button1_Click(object sender, EventArgs e)
    {
        if (TextBox3.Text != null)
        {
            // <snippet3>
            PersonalizationStateInfoCollection findresult;
          findresult = PersonalizationAdministration.FindUserState(null, TextBox3.Text);
          if (findresult.Count != 0)
          {
              Label4.Text = findresult.Count + "  user(s) found";
              Label4.Visible = true;
          }
              // </snippet3>
          else
          {
              Label4.Text = "No users found.";
              Label4.Visible = true;
          }
        }
      else
      {
          Label4.Text = "You must enter a user name to find.";
      }

    }
    // </snippet2>

</script>
<asp:Label ID="Label1" runat="server" Text="Personalization Provider" Width="162px"
  AssociatedControlID="TextBox1" />
<br />
<asp:TextBox ID="TextBox1" runat="server" Width="268px"></asp:TextBox>
<br />
<br />
<asp:Label ID="Label2" runat="server" Text="Scope" AssociatedControlID="TextBox2" />
<br />
<asp:TextBox ID="TextBox2" runat="server" Width="90px"></asp:TextBox>
<br />
<br />
<asp:Label ID="Label3" runat="server" Text="User to Find" Width="135px"
  AssociatedControlID="TextBox3" />
<br />
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
&nbsp;
<asp:Label ID="Label4" runat="server" Width="77px" ForeColor="Red" />
<br />
<br />
<asp:Button ID="Button1" runat="server" Text="Find User" OnClick="Button1_Click" />&nbsp;&nbsp;&nbsp;
<br />
<br />
<asp:Label ID="Label5" runat="server" Text="Personalization Statistics" Width="204px" />
<br />
<br />
<asp:Label ID="Label6" runat="server" Text="Number of User Personalization States" Width="246px"
  AssociatedControlID="TextBox4" Height="21px" />
<br />
<asp:TextBox ID="TextBox4" runat="server" Width="63px"></asp:TextBox>
<br />
<br />
<br />
<br />

Remarques

Cette classe fournit plusieurs méthodes et propriétés statiques qui exposent des fonctionnalités de gestion et d’administration pour la personnalisation des composants WebPart. Ces méthodes s’appliquent au fournisseur de personnalisation par défaut configuré dans le WebPartManager contrôle pour un contrôle WebPart. Si vous devez administrer plusieurs magasins de données qui jouent le rôle de fournisseurs de personnalisation, vous devez utiliser les méthodes sur les classes de fournisseur de personnalisation individuelles directement. Notez que la collection de fournisseurs de personnalisation configurés pour un WebPartManager contrôle est disponible à partir de la Providers propriété statique.

Il est important de savoir que la personnalisation échoue si votre application web ne s’exécute pas au niveau de confiance par défaut de ou supérieur (vous pouvez définir des niveaux de confiance personnalisés dans un fichier Web.config à l’aide de Medium l’élément <trust level="" /> ). Les PersonalizationAdministration classes et SqlPersonalizationProvider vérifient tous les deux un niveau de confiance de Low quand ils sont initialisés. Si vous configurez votre application pour qu’elle s’exécute à un niveau de confiance de Lowet que vous utilisez le fournisseur par défaut SqlPersonalizationProvider pour gérer les données de personnalisation de votre application, la première fois que l’application tente d’accéder aux données de personnalisation, elle échoue, car un processus de travail ASP.NET s’exécutant en Low confiance ne dispose pas des autorisations nécessaires pour appeler les différentes classes de l’espace System.Data.SqlClient de noms.

Propriétés

ApplicationName

Obtient ou définit le nom de l'application spécifiée par le fournisseur.

Provider

Retourne une instance du fournisseur de personnalisations par défaut.

Providers

Retourne une collection de fournisseurs de personnalisations indexés par nom.

Méthodes

FindInactiveUserState(String, String, DateTime)

Retourne, pour les utilisateurs inactifs, un ensemble d'informations d'état de personnalisation par utilisateur, selon les paramètres spécifiés.

FindInactiveUserState(String, String, DateTime, Int32, Int32, Int32)

Retourne, pour les utilisateurs inactifs, un ensemble d'informations d'état de personnalisation par utilisateur, selon les paramètres spécifiés.

FindSharedState(String)

Retourne une collection d'informations d'état de personnalisation partagées, selon le chemin spécifié.

FindSharedState(String, Int32, Int32, Int32)

Retourne une collection d'informations partagées d'état de personnalisation, selon les paramètres spécifiés.

FindUserState(String, String)

Retourne une collection d'informations d'état de personnalisation par utilisateur, selon le nom d'utilisateur et le chemin vers la page.

FindUserState(String, String, Int32, Int32, Int32)

Retourne une collection d'informations d'état de personnalisation par utilisateur, selon les paramètres spécifiés.

GetAllInactiveUserState(DateTime)

Retourne une collection qui comprend l'intégralité des informations d'état de personnalisation par utilisateur associées aux utilisateurs inactifs, selon la date spécifiée.

GetAllInactiveUserState(DateTime, Int32, Int32, Int32)

Retourne un sous-ensemble qui comprend l'intégralité des informations d'état de personnalisation par utilisateur associées aux utilisateurs inactifs, selon les paramètres spécifiés.

GetAllState(PersonalizationScope)

Retourne une collection de toutes les informations d'état de personnalisation issues du magasin de données sous-jacent pour la portée de personnalisation demandée.

GetAllState(PersonalizationScope, Int32, Int32, Int32)

Retourne un sous-ensemble de toutes les informations d'état de personnalisation issues du magasin de données sous-jacent, selon les paramètres spécifiés.

GetCountOfInactiveUserState(DateTime)

Retourne un compte des éléments de personnalisation par utilisateur présents dans le magasin de données sous-jacent pour les utilisateurs inactifs, selon le paramètre spécifié.

GetCountOfInactiveUserState(String, DateTime)

Retourne un compte des éléments de personnalisation par utilisateur présents dans le magasin de données sous-jacent pour les utilisateurs inactifs, selon les paramètres spécifiés.

GetCountOfState(PersonalizationScope)

Retourne un compte des éléments d'état de personnalisation présents dans le magasin de données sous-jacent et qui existent pour la portée spécifiée.

GetCountOfState(PersonalizationScope, String)

Retourne un compte des éléments d'état de personnalisation présents dans le magasin de données sous-jacent et qui existent pour les paramètres spécifiés.

GetCountOfUserState(String)

Retourne un compte des éléments d'état de personnalisation présents dans le magasin de données sous-jacent et qui existent pour l'utilisateur spécifié.

ResetAllState(PersonalizationScope)

Réinitialise toutes les données de personnalisation présentes dans le magasin de données sous-jacent en supprimant toutes les lignes associées à la portée spécifiée.

ResetInactiveUserState(DateTime)

Réinitialise toutes les informations d'état de personnalisation par utilisateur dans le magasin de données sous-jacent, selon le paramètre spécifié.

ResetInactiveUserState(String, DateTime)

Réinitialise toutes les informations d'état par utilisateur présentes dans le magasin de données sous-jacent pour les utilisateurs inactifs, selon les paramètres spécifiés.

ResetSharedState(String)

Réinitialise l'état partagé dans le magasin de données sous-jacent pour le chemin d'accès spécifié.

ResetSharedState(String[])

Réinitialise un état partagé dans le magasin de données sous-jacent pour les chemins d'accès spécifiés.

ResetState(PersonalizationStateInfoCollection)

Réinitialise les données de personnalisation dans le magasin de données sous-jacent, en fonction des éléments contenus dans la collection.

ResetUserState(String)

Réinitialise l'intégralité d'un état par utilisateur dans le magasin de données sous-jacent pour le chemin spécifié.

ResetUserState(String, String)

Réinitialise l'état par utilisateur dans le magasin de données sous-jacent pour la combinaison spécifiée nom d'utilisateur/chemin d'accès.

ResetUserState(String, String[])

Réinitialise l'état par utilisateur dans le magasin de données sous-jacent pour la page et les utilisateurs spécifiés.

ResetUserState(String[])

Réinitialise l'intégralité d'un état par utilisateur dans le magasin de données sous-jacent pour les chemins spécifiés.

S’applique à

Voir aussi