PersonalizationAdministration Classe

Definizione

Implementa funzionalità di gestione e amministrazione per la personalizzazione di Web part. La classe non può essere ereditata.

public ref class PersonalizationAdministration abstract sealed
public static class PersonalizationAdministration
type PersonalizationAdministration = class
Public Class PersonalizationAdministration
Ereditarietà
PersonalizationAdministration

Esempio

Nell'esempio di codice seguente viene illustrato come usare diversi metodi nella PersonalizationAdministration classe . Questo esempio è costituito da una pagina .aspx che fa riferimento a un controllo utente web part denominato Persadmin.ascx. Il codice seguente fornisce il file .aspx per l'esempio.

<%@ 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>

Questo codice fornisce il Persadmin.ascx controllo .

Importante

L'esempio include una casella di testo che accetta l'input dell'utente e rappresenta quindi una potenziale minaccia alla sicurezza. Per impostazione predefinita, le pagine Web ASP.NET verificano che l'input dell'utente non includa script o elementi HTML. Per altre informazioni, vedere Cenni preliminari sugli attacchi tramite 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 />

Commenti

Questa classe fornisce diversi metodi e proprietà statici che espongono funzionalità amministrative e di gestione per la personalizzazione delle web part. Questi metodi si applicano al provider di personalizzazione predefinito configurato nel WebPartManager controllo per un controllo Web part. Se è necessario amministrare diversi archivi dati che fungono da provider di personalizzazione, è necessario usare direttamente i metodi nelle singole classi del provider di personalizzazione. Si noti che la raccolta di provider di personalizzazione configurati per un WebPartManager controllo è disponibile dalla Providers proprietà statica.

È importante tenere presente che la personalizzazione avrà esito negativo se l'applicazione Web non viene eseguita al livello di attendibilità predefinito di o superiore (è possibile impostare livelli di Medium attendibilità personalizzati in un file di Web.config usando l'elemento <trust level="" /> ). Le PersonalizationAdministration classi e SqlPersonalizationProvider verificano entrambi la presenza di un livello di attendibilità di Low quando vengono inizializzate. Se si configura l'applicazione per l'esecuzione a un livello di attendibilità di Lowe si usa il provider predefinito SqlPersonalizationProvider per gestire i dati di personalizzazione per l'applicazione, la prima volta che l'applicazione tenta di accedere ai dati di personalizzazione, avrà esito negativo perché un processo di lavoro ASP.NET in esecuzione in Low trust non dispone delle autorizzazioni necessarie per chiamare nelle varie classi nello spazio dei System.Data.SqlClient nomi.

Proprietà

ApplicationName

Ottiene o imposta il nome dell'applicazione specificata dal provider.

Provider

Restituisce un'istanza del provider di personalizzazioni predefinito.

Providers

Restituisce un insieme di provider di personalizzazioni indicizzati in base al nome.

Metodi

FindInactiveUserState(String, String, DateTime)

Restituisce un insieme di informazioni di stato sulla personalizzazione per singolo utente relativo agli utenti inattivi in base ai parametri specificati.

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

Restituisce un insieme di informazioni di stato sulla personalizzazione per singolo utente relativo agli utenti inattivi in base ai parametri specificati.

FindSharedState(String)

Restituisce un insieme di informazioni condivise sullo stato di personalizzazione in base al percorso specificato.

FindSharedState(String, Int32, Int32, Int32)

Restituisce un insieme di informazioni condivise sullo stato di personalizzazione in base ai parametri specificati.

FindUserState(String, String)

Restituisce un insieme di informazioni di stato sulla personalizzazione per singolo utente in base al nome utente e al percorso della pagina.

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

Restituisce un insieme di informazioni di stato sulla personalizzazione per singolo utente in base ai parametri specificati.

GetAllInactiveUserState(DateTime)

Restituisce un insieme di tutte le informazioni di stato sulla personalizzazione per singolo utente associate agli utenti inattivi in base alla data specificata.

GetAllInactiveUserState(DateTime, Int32, Int32, Int32)

Restituisce un sottoinsieme di tutte le informazioni di stato sulla personalizzazione per singolo utente associate agli utenti inattivi in base ai parametri specificati.

GetAllState(PersonalizationScope)

Restituisce un insieme di tutte le informazioni di stato sulla personalizzazione dell'archivio dati sottostante per l'ambito di personalizzazione richiesto.

GetAllState(PersonalizationScope, Int32, Int32, Int32)

Restituisce un sottoinsieme di tutte le informazioni di stato sulla personalizzazione dall'archivio dati sottostante in base ai parametri specificati.

GetCountOfInactiveUserState(DateTime)

Restituisce il numero degli elementi di personalizzazione per singolo utente inclusi nell'archivio dati sottostante per gli utenti inattivi in base al parametro specificato.

GetCountOfInactiveUserState(String, DateTime)

Restituisce il numero degli elementi di personalizzazione per singolo utente inclusi nell'archivio dati sottostante per gli utenti inattivi in base ai parametri specificati.

GetCountOfState(PersonalizationScope)

Restituisce il numero degli elementi relativi allo stato di personalizzazione disponibili nell'archivio dati sottostante per l'ambito specificato.

GetCountOfState(PersonalizationScope, String)

Restituisce il numero degli elementi relativi allo stato di personalizzazione disponibili nell'archivio dati sottostante per i parametri specificati.

GetCountOfUserState(String)

Restituisce il numero degli elementi relativi allo stato di personalizzazione disponibili nell'archivio dati sottostante per l'utente specificato.

ResetAllState(PersonalizationScope)

Reimposta tutti i dati sulla personalizzazione disponibili nell'archivio dati sottostante eliminando tutte le righe associate all'ambito specificato.

ResetInactiveUserState(DateTime)

Reimposta tutte le informazioni di stato sulla personalizzazione per singolo utente disponibili nell'archivio dati sottostante in base al parametro specificato.

ResetInactiveUserState(String, DateTime)

Reimposta tutte le informazioni sullo stato per singolo utente disponibili nell'archivio dati sottostante per gli utenti inattivi in base ai parametri specificati.

ResetSharedState(String)

Reimposta lo stato condiviso nell'archivio dati sottostante per il percorso specificato.

ResetSharedState(String[])

Reimposta lo stato condiviso nell'archivio dati sottostante per i percorsi specificati.

ResetState(PersonalizationStateInfoCollection)

Reimposta i dati di personalizzazione nell'archivio dati sottostante, in base agli elementi contenuti nella raccolta.

ResetUserState(String)

Reimposta tutti gli stati per singolo utente nell'archivio dati sottostante per il percorso specificato.

ResetUserState(String, String)

Reimposta lo stato per singolo utente nell'archivio dati sottostante per la combinazione di nome utente e percorso specificata.

ResetUserState(String, String[])

Reimposta lo stato per singolo utente nell'archivio dati sottostante per la pagina e gli utenti specificati.

ResetUserState(String[])

Reimposta tutti gli stati per singolo utente nell'archivio dati sottostante per i percorsi specificati.

Si applica a

Vedi anche