Como: Remover entradas do usuário do armazenamento de personalização
Em um aplicativo Web ASP.NET que usa a personalização, existem algumas circunstâncias em que talvez você precise remover entradas do armazenamento de personalização.Como: Habilitar usuários para desmarcar o estado de personalização mostra a abordagem mais simples, que é expor o ResetPersonalizationState método por meio de um controle na página para que os usuários individuais podem remover todos os dados de personalização que pertence a eles. No entanto, se você precisar gerenciar dados de personalização de outros, vários usuários, você deve usar os vários métodos da classe PersonalizationAdministration.
Observação: |
---|
Somente aos administradores da página devem ser concedidos acesso aos métodos da classe PersonalizationAdministration. |
Para remover um estado de usuário individual do armazenamento de personalização
Em uma parte de aplicativo da Web que está disponível somente para administradores, tal como uma página ASP.NET ou um controle de usuário, crie um conjunto de controles para receber entrada do usuário e enviá-la para o servidor.
O exemplo neste procedimento usa um controle TextBox e um controle Button.
Em manipulador de eventos apropriado, chame o método PersonalizationAdministration.ResetUserState com o caminho relativo para o aplicativo da Web em questão e o nome de usuário como parâmetros, conforme mostrado no exemplo o seguir.
Protected Sub btnClear_Click(ByVal sender As Object, ByVal e As System.EventArgs) ' Verify that the text box txtUser is not empty. If (txtUser.Text.Length < 1) Then Response.Write("You must enter a user name.") End If Return ' Reset the user. If (Not PersonalizationAdministration.ResetUserState("~/Default.aspx", txtUser.Text)) Then Response.Write("The user could not be found or the user has not personalized this page.") End If End Sub
protected void btnClear_Click(object sender, EventArgs e) { // Verify that the text box is not empty. if (txtUser.Text.Length < 1) { Response.Write("You must enter a user name."); return; } // Reset the user. if (! PersonalizationAdministration.ResetUserState("~/Default.aspx", txtUser.Text)) { Response.Write("The user could not be found or the user has not personalized this page"); } }
Para remover um grupo de usuários do armazenamento de personalização
Em uma parte de aplicativo da Web que está disponível somente para administradores, crie um conjunto de controles para receber entrada do usuário e enviá-lo para o servidor.
O exemplo neste procedimento usa um controle TextBox e um controle Button.
Em manipulador de eventos apropriado, chame o método PersonalizationAdministration.ResetUserState com o caminho relativo para o aplicativo da Web em questão e a lista de nomes de usuário como parâmetros, conforme mostrado no exemplo o seguir.
Protected Sub btnClearList_Click(ByVal sender As Object, ByVal e As System.EventArgs) ' Verify that the text box is not empty. If (txtUser.Text.Length < 1) Then Response.Write("You must enter at least one user name.") Return End If ' Extract the list of users. Dim users As Array users = txtUserList.Text.Split(" ,;".ToCharArray()) ' Reset the users. Dim RowsReset As Integer RowsReset = PersonalizationAdministration.ResetUserState("~/Default.aspx", users) Response.Write(RowsReset + "of " + users.Length + " users found and removed.") End Sub
protected void btnClearList_Click(object sender, EventArgs e) { // Verify that the text box is not empty. if (txtUser.Text.Length < 1) { Response.Write("You must enter at least one user name."); return; } // Reset the users. string[] users = txtUserList.Text.Split(" ,;".ToCharArray()); int RowsReset = PersonalizationAdministration.ResetUserState("~/Default.aspx", users); Response.Write(RowsReset + "of " + users.Length + " users found and removed."); }
Para remover todos os usuários inativos do armazenamento de personalização
Em uma parte de aplicativo da Web que só está disponível para administradores, crie um controle Calendar e um Button.
Em manipulador de eventos apropriado, chame o método PersonalizationAdministration.ResetInactiveUserState com o caminho relativo para o aplicativo da Web em questão e a lista de nomes de usuário como parâmetros, conforme mostrado no exemplo o seguir.
Protected Sub btnClearInactive_Click(ByVal sender As Object, ByVal e As System.EventArgs) ' Verify that a date is selected. If (calInactive.SelectedDate = DateTime.MinValue) Then Response.Write("You must select a date.") Return End If ' Reset all users inactive since the selected date. Dim RowsReset As Integer RowsReset = PersonalizationAdministration.ResetInactiveUserState("~/Default.aspx", calInactive.SelectedDate) Response.Write(RowsReset + " inactive users removed.") End Sub
protected void btnClearInactive_Click(object sender, EventArgs e) { // Verify that a date is selected. if (calInactive.SelectedDate == DateTime.MinValue) { Response.Write("You must select a date."); return; } // Reset all users inactive since the selected date. int RowsReset = PersonalizationAdministration.ResetInactiveUserState("~/Default.aspx", calInactive.SelectedDate); Response.Write(RowsReset + " inactive users removed."); }
Consulte também
Tarefas
Como: Habilitar usuários para desmarcar o estado de personalização
Referência
System.Web.UI.WebControls.WebParts