Compartilhar via


PersonalizationAdministration Classe

Definição

Implementa o gerenciamento e a funcionalidade administrativa para personalização de Web Parts. Essa classe não pode ser herdada.

public ref class PersonalizationAdministration abstract sealed
public static class PersonalizationAdministration
type PersonalizationAdministration = class
Public Class PersonalizationAdministration
Herança
PersonalizationAdministration

Exemplos

O exemplo de código a seguir demonstra como usar vários métodos na PersonalizationAdministration classe . Este exemplo consiste em uma página .aspx que faz referência a um controle de usuário de Web Parts chamado Persadmin.ascx. O código a seguir fornece o arquivo .aspx para o exemplo.

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

Esse código fornece o Persadmin.ascx controle .

Importante

Este exemplo tem uma caixa de texto que aceita a entrada do usuário, que é uma possível ameaça à segurança. Por padrão, ASP.NET páginas da Web validam que a entrada do usuário não inclui elementos HTML ou script. Para obter mais informações, consulte Visão geral de explorações 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 />

Comentários

Essa classe fornece vários métodos estáticos e propriedades que expõem o gerenciamento e a funcionalidade administrativa para personalização de Web Parts. Esses métodos se aplicam ao provedor de personalização padrão configurado no WebPartManager controle para um controle de Web Parts. Se você precisar administrar vários armazenamentos de dados que atuam como provedores de personalização, deverá usar os métodos nas classes individuais do provedor de personalização diretamente. Observe que a coleção de provedores de personalização configurados para um WebPartManager controle está disponível na Providers propriedade estática.

É importante estar ciente de que a personalização falhará se o aplicativo Web não for executado no nível de confiança padrão ou Medium superior (você pode definir níveis de confiança personalizados em um arquivo Web.config usando o <trust level="" /> elemento ). As PersonalizationAdministration classes e SqlPersonalizationProvider verificam se há um nível de confiança de Low quando são inicializadas. Se você configurar seu aplicativo para ser executado em um nível de confiança de Lowe usar o provedor padrão SqlPersonalizationProvider para gerenciar os dados de personalização do aplicativo, na primeira vez que o aplicativo tentar acessar dados de personalização, ele falhará porque um processo de trabalho ASP.NET em execução em Low confiança não tem as permissões necessárias para chamar as várias classes no System.Data.SqlClient namespace.

Propriedades

ApplicationName

Obtém ou define o nome do aplicativo especificado pelo provedor.

Provider

Retorna uma instância do provedor de personalização padrão.

Providers

Retorna uma coleção de provedores de personalização indexada por nome.

Métodos

FindInactiveUserState(String, String, DateTime)

Retorna uma coleção de informações de estado de personalização de cada usuário, para usuários inativos, de acordo com os parâmetros especificados.

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

Retorna uma coleção de informações de estado de personalização de cada usuário, para usuários inativos, de acordo com os parâmetros especificados.

FindSharedState(String)

Retorna uma coleção de informações de estado de personalização compartilhadas com base no caminho especificado.

FindSharedState(String, Int32, Int32, Int32)

Retorna uma coleção de informações de estado de personalização compartilhadas com base nos parâmetros especificados.

FindUserState(String, String)

Retorna uma coleção de informações de estado de personalização de cada usuário com base no nome de usuário e caminho de página.

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

Retorna uma coleção de informações de estado de personalização de cada usuário com base nos parâmetros especificados.

GetAllInactiveUserState(DateTime)

Retorna uma coleção de todas as informações de estado de personalização de cada usuário, associadas com usuários inativos, de acordo com a data especificada.

GetAllInactiveUserState(DateTime, Int32, Int32, Int32)

Retorna um subconjunto de todas as informações de estado de personalização de cada usuário, associadas com usuários inativos, de acordo com os parâmetros especificados.

GetAllState(PersonalizationScope)

Retorna uma coleção de todas as informações de estado de personalização do armazenamento de dados subjacente para o escopo de personalização solicitado.

GetAllState(PersonalizationScope, Int32, Int32, Int32)

Retorna um subconjunto de todas as informações de estado de personalização do armazenamento de dados subjacente, de acordo com os parâmetros especificados.

GetCountOfInactiveUserState(DateTime)

Retorna uma contagem de itens de personalização de cada usuário no armazenamento de dados subjacente para usuários inativos, de acordo com o parâmetro especificado.

GetCountOfInactiveUserState(String, DateTime)

Retorna uma contagem de itens de personalização de cada usuário no armazenamento de dados subjacente para usuários inativos, de acordo com os parâmetros especificados.

GetCountOfState(PersonalizationScope)

Retorna uma contagem dos itens de estado de personalização no armazenamento de dados subjacente que existe para o escopo especificado.

GetCountOfState(PersonalizationScope, String)

Retorna uma contagem dos itens de estado de personalização no armazenamento de dados subjacente que existe para os parâmetros especificados.

GetCountOfUserState(String)

Retorna uma contagem dos itens de estado de personalização no armazenamento de dados subjacente que existe para o usuário especificado.

ResetAllState(PersonalizationScope)

Redefine todos os dados de personalização no armazenamento de dados subjacente, excluindo todas as linhas associadas com o escopo especificado.

ResetInactiveUserState(DateTime)

Redefine todas as informações de estado de personalização de cada usuário no armazenamento de dados subjacente, de acordo com o parâmetro especificado.

ResetInactiveUserState(String, DateTime)

Redefine todas as informações de estado de cada usuário no armazenamento de dados subjacente para usuários inativos, de acordo com os parâmetros especificados.

ResetSharedState(String)

Redefine o estado compartilhado no armazenamento de dados subjacente para o caminho especificado.

ResetSharedState(String[])

Redefine o estado compartilhado no armazenamento de dados subjacente para os caminhos especificados.

ResetState(PersonalizationStateInfoCollection)

Redefine os dados de personalização no armazenamento de dados subjacente, com base nos itens contidos na coleção.

ResetUserState(String)

Redefine todo o estado de cada usuário no armazenamento de dados subjacente para o caminho especificado.

ResetUserState(String, String)

Redefine o estado de cada usuário no armazenamento de dados subjacente para a combinação especificada de nome de usuário e caminho.

ResetUserState(String, String[])

Redefine o estado de cada usuário no armazenamento de dados subjacente para a página e os usuários especificados.

ResetUserState(String[])

Redefine todo o estado de cada usuário no armazenamento de dados subjacente para os caminhos especificados.

Aplica-se a

Confira também