방법: 개인 설정 저장소에서 사용자 입력 제거

업데이트: 2007년 11월

개인 설정을 사용하는 ASP.NET 웹 응용 프로그램의 경우 개인 설정 저장소에서 입력을 제거해야 하는 상황이 있을 수 있습니다. 방법: 사용자가 개인 설정 상태를 지울 수 있도록 설정에서는 개인 사용자가 자신이 입력한 모든 개인 설정 데이터를 제거할 수 있도록 페이지에 컨트롤을 통해 ResetPersonalizationState 메서드를 노출하는 매우 간단한 방법을 보여 줍니다. 그러나 다른 여러 사용자의 개인 설정 데이터를 관리해야 하는 경우에는 PersonalizationAdministration 클래스의 여러 메서드를 사용해야 합니다.

참고:

PersonalizationAdministration 클래스의 메서드에는 페이지의 관리자만 액세스할 수 있습니다.

개인 설정 저장소에서 개별 사용자 상태를 제거하려면

  1. ASP.NET 페이지나 사용자 컨트롤 같이 관리자에게만 허용된 웹 응용 프로그램의 일부에서 사용자 입력을 받고 서버에 이를 전달하는 컨트롤 집합을 만듭니다.

    이 절차의 예제에서는 TextBox 컨트롤과 Button 컨트롤을 사용합니다.

  2. 해당 이벤트 처리기에서 다음 예제와 같이 웹 응용 프로그램의 상대 경로 및 사용자 이름을 매개 변수로 사용하여 PersonalizationAdministration.ResetUserState 메서드를 호출합니다.

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

개인 설정 저장소에서 사용자 그룹을 제거하려면

  1. 관리자에게만 허용된 웹 응용 프로그램의 일부에서 사용자 입력을 받고 서버에 이를 전달하는 컨트롤 집합을 만듭니다.

    이 절차의 예제에서는 TextBox 컨트롤과 Button 컨트롤을 사용합니다.

  2. 해당 이벤트 처리기에서 다음 예제와 같이 웹 응용 프로그램의 상대 경로 및 사용자 이름 목록을 매개 변수로 사용하여 PersonalizationAdministration.ResetUserState 메서드를 호출합니다.

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

개인 설정 저장소에서 모든 비활성 사용자를 제거하려면

  1. 관리자에게만 허용된 웹 응용 프로그램의 일부에서 CalendarButton 컨트롤을 만듭니다.

  2. 해당 이벤트 처리기에서 다음 예제와 같이 웹 응용 프로그램의 상대 경로 및 사용자 이름 목록을 매개 변수로 사용하여 PersonalizationAdministration.ResetInactiveUserState 메서드를 호출합니다.

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

참고 항목

작업

방법: 사용자가 개인 설정 상태를 지울 수 있도록 설정

참조

System.Web.UI.WebControls.WebParts

PersonalizationAdministration

기타 리소스

ASP.NET 웹 파트 컨트롤