Freigeben über


Gewusst wie: Entfernen von Benutzereinträgen aus dem Personalisierungsspeicher

Aktualisiert: November 2007

In einer ASP.NET-Webanwendung, die Personalisierung verwendet, müssen Sie unter bestimmten Umständen Einträge aus dem Personalisierungsspeicher entfernen. Das erreichen Sie am einfachsten, indem Sie die ResetPersonalizationState-Methode auf der Seite mithilfe eines Steuerelements bereitstellen, wie in Gewusst wie: Benutzern das Löschen ihres Personalisierungszustands ermöglichen beschrieben. Damit können die einzelnen Benutzer alle sie betreffenden Personalisierungsdaten entfernen. Um jedoch die Personalisierungsdaten anderer oder mehrerer Benutzer verwalten zu können, müssen Sie die verschiedenen Methoden der PersonalizationAdministration-Klasse verwenden.

Hinweis:

Nur Administratoren der Seite sollte Zugriff auf die Methoden der PersonalizationAdministration-Klasse gewährt werden.

So entfernen Sie einen einzelnen Benutzerzustand aus dem Personalisierungsspeicher

  1. Erstellen Sie in einem nur für Administratoren verfügbaren Bereich der Webanwendung (wie z. B. eine ASP.NET-Seite oder ein Benutzersteuerelement) eine Reihe von Steuerelementen, um Benutzereingaben zu empfangen und an den Server zu senden.

    In dem Beispiel in diesem Verfahren werden ein TextBox-Steuerelement und ein Button-Steuerelement verwendet.

  2. Rufen Sie, wie in folgendem Beispiel beschrieben, im entsprechenden Ereignishandler die PersonalizationAdministration.ResetUserState-Methode mit dem relativen Pfad zur entsprechenden Webanwendung und dem Benutzernamen als Parameter auf.

    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");
        }
    }
    

So entfernen Sie eine Benutzergruppe aus dem Personalisierungsspeicher

  1. Erstellen Sie in einem nur für Administratoren verfügbaren Bereich der Webanwendung eine Reihe von Steuerelementen, um Benutzereingaben zu empfangen und an den Server zu senden.

    In dem Beispiel in diesem Verfahren werden ein TextBox-Steuerelement und ein Button-Steuerelement verwendet.

  2. Rufen Sie, wie in folgendem Beispiel beschrieben, im entsprechenden Ereignishandler die PersonalizationAdministration.ResetUserState-Methode mit dem relativen Pfad zur entsprechenden Webanwendung und einer Liste mit Benutzernamen als Parameter auf.

    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.");
    }
    

So entfernen Sie alle nicht aktiven Benutzer aus dem Personalisierungsspeicher

  1. Erstellen Sie in einem nur für Administratoren verfügbaren Bereich der Webanwendung ein Calendar-Steuerelement und ein Button-Steuerelement.

  2. Rufen Sie, wie in folgendem Beispiel beschrieben, im entsprechenden Ereignishandler die PersonalizationAdministration.ResetInactiveUserState-Methode mit dem relativen Pfad zur entsprechenden Webanwendung und einer Liste mit Benutzernamen als Parameter auf.

    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.");
    }
    

Siehe auch

Aufgaben

Gewusst wie: Benutzern das Löschen ihres Personalisierungszustands ermöglichen

Referenz

System.Web.UI.WebControls.WebParts

PersonalizationAdministration

Weitere Ressourcen

ASP.NET-Webparts-Steuerelemente