Procedura: rimuovere le voci aggiunte dall'utente dall'archivio di personalizzazioni
Aggiornamento: novembre 2007
In un'applicazione Web ASP.NET che utilizza la personalizzazione ci sono casi in cui potrebbe essere necessario rimuovere voci dall'archivio di personalizzazione. In Procedura: consentire agli utenti di cancellare lo stato di personalizzazione viene illustrato il modo più semplice, che consiste nell'esporre il metodo ResetPersonalizationState tramite un controllo nella pagina in modo che i singoli utenti possano rimuovere tutti i dati di personalizzazione a loro corrispondenti. Tuttavia, se è necessario gestire i dati di personalizzazione di più utenti, è necessario utilizzare i vari metodi della classe PersonalizationAdministration.
Nota: |
---|
Solo agli amministratori della pagina deve essere concesso l'accesso ai metodi della classe PersonalizationAdministration. |
Per rimuovere lo stato di un singolo utente dall'archivio di personalizzazione
In una parte dell'applicazione Web disponibile solo agli amministratori, ad esempio una pagina ASP.NET o un controllo utente, creare un insieme di controlli per ricevere l'input dell'utente e inviarlo al server.
Nell'esempio in questa procedura vengono utilizzati i controlli TextBox e Button.
Nel gestore eventi appropriato chiamare il metodo PersonalizationAdministration.ResetUserState con il percorso relativo all'applicazione Web in questione e il nome utente come parametri, come illustrato nell'esempio seguente.
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"); } }
Per rimuovere un gruppo di utenti dall'archivio di personalizzazione
In una parte dell'applicazione Web disponibile solo agli amministratori creare un insieme di controlli per ricevere l'input dell'utente e inviarlo al server.
Nell'esempio in questa procedura vengono utilizzati i controlli TextBox e Button.
Nel gestore eventi appropriato chiamare il metodo PersonalizationAdministration.ResetUserState con il percorso relativo all'applicazione Web in questione e un elenco di nomi utente come parametri, come illustrato nell'esempio seguente.
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."); }
Per rimuovere tutti gli utenti inattivi dall'archivio di personalizzazione
In una parte dell'applicazione Web disponibile solo agli amministratori creare un controllo Calendar e un controllo Button.
Nel gestore eventi appropriato chiamare il metodo PersonalizationAdministration.ResetInactiveUserState con il percorso relativo all'applicazione Web in questione e un elenco di nomi utente come parametri, come illustrato nell'esempio seguente.
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."); }
Vedere anche
Attività
Procedura: consentire agli utenti di cancellare lo stato di personalizzazione
Riferimenti
System.Web.UI.WebControls.WebParts