2011-02-03 27 views
6

C#のリダイレクトの前に、Request.UrlReferrer.AbsoluteUriからQuerystringの部分を削除します。例えばC#のRequest.UrlReferrer.AbsoluteUriからquerystringの部分を削除する方法

、あなたは

Request.UrlReferrer.AbsoluteUri = "http://localhost:8080/english/index_2011.aspx?logout=true" 

を持っている場合今、私は

Response.Redirect(Request.UrlReferrer.AbsoluteUri) without QueryString part (?logout=true") 

にしたい。これは、のためにトリックを行う必要がありますC#

答えて

5

Response.Redirect(Request.UrlReferrer.AbsoluteUri.Substring(0、Request.UrlReferrer.AbsoluteUri.IndexOf( '?')));

EDIT

実際には、あなたが実際に使用することができます。

Response.Redirect(Request.UrlReferrer.AbsolutePath); 

MSDNでそれをチェックアウト。

+0

スプリットを使用することはできません。 –

+0

私は-1を使用しているので、aspx拡張子から 'x'を削除しています –

+0

@Thanks親愛なるArdman –

8

使用にRequest.UrlReferrer.AbsoluteUri.ToString().Split('?')[0]

を使用することをお勧めしてください。君は。

8

きれいな方法は、私はパスまでのすべてをしたい意味

Request.UrlReferrer.GetLeftPart(UriPartial.Path) 

だろう。返す必要があります

"http://localhost:8080/english/index_2011.aspx" 
+0

はい、 /english/index_2011.aspx – JoshYates1980

関連する問題