【解決方法】asp.net でクエリ文字列値をクリアする方法

プログラミングQA


こんにちは、

クエリ文字列値をクリアする方法。

例:

response.write("sample.aspx?id=3")

この値は別のページのようなもので取得しています

int id=request.querystring["id"];

updateメソッドでこの値をクリアしたいと考えています。

私は以下を使用しています

Response.ClearContent();
Request.QueryString.Remove("id");  

しかしクリアではない

感謝®
ベンカット

解決策 1

すべてのクエリ文字列をクリアするには、Request.QueryString.Clear() を呼び出します。
これにより、URL にあるすべてのクエリ文字列が削除されます
特定のクエリ文字列を削除するには、Request.QueryString.Remove(“name of the querystring”) を呼び出します。

例:

http://www.mypage.aspx?id=123
Request.QueryString.Remove("id");

または使用できます

Request.QueryString.Clear();

またはクエリ文字列を削除します

http://www.mypage.aspx?id=123&date=29/8/2008
Request.QueryString.Clear();

結果
2 つのクエリ文字列 (id、date) を含まない URL。

解決策 3

PropertyInfo isreadonly = typeof(System.Collections.Specialized.NameValueCollection).GetProperty("IsReadOnly", BindingFlags.Instance | BindingFlags.NonPublic);
                // make collection editable
                isreadonly.SetValue(this.Request.QueryString, false, null);
                // remove
                this.Request.QueryString.Remove("id");

こんにちは、上記のコードを使用してこれを解決しました

解決策 2

使用できます

Request.QueryString.Clear();

すべてのクエリ文字列をクリアする場合

解決策 7

Request.QueryString が読み取り専用であるため、解決策 2 は機能しません。

コメント

タイトルとURLをコピーしました