sabato 7 dicembre 2013

Asp.Net Rimuovere parametro query string C#

I parametri passati in query string, essendo di tipo solo lettura (read only) non si possono eliminare nella fase codebind ossia da codice, almeno che non si cambia lo stato.
Il frammento di codice qui di seguito illustra tale tecnica, che permette la rimozione del parametro in query string.

Spazio di nomi:
using System.Reflection;

C#
 PropertyInfo isreadonly =    typeof(System.Collections.Specialized.NameValueCollection).GetProperty(   "IsReadOnly", BindingFlags.Instance | BindingFlags.NonPublic);
            //Elimono la possibilità che sia di sola lettura
            isreadonly.SetValue(this.Request.QueryString, false, null);
            //Rimuovo il parametro di query string
            this.Request.QueryString.Remove("Error");

Nessun commento: