2011-02-03 33 views
6

Tôi muốn xóa phần Chuỗi truy vấn khỏi Request.UrlReferrer.AbsoluteUri của mình trước khi chuyển hướng trong C#.Cách xóa phần chuỗi truy vấn khỏi Request.UrlReferrer.AbsoluteUri trong C#

Ví dụ, nếu bạn đã có bạn

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

Bây giờ tôi muốn

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

Hãy đề nghị sử dụng C#

Trả lời

5

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

EDIT

Trong thực tế, bạn thực sự có thể sử dụng:

Response.Redirect(Request.UrlReferrer.AbsolutePath); 

Check it out trên MSDN.

+0

Chúng ta không thể sử dụng phân tách trong đó. –

+0

Tại sao chúng tôi đang sử dụng -1, nó là loại bỏ 'x' từ phần mở rộng aspx của tôi –

+0

@Thanks Kính gửi Ardman –

8

sử dụng Request.UrlReferrer.AbsoluteUri.ToString().Split('?')[0]

này nên làm các trick cho bạn.

8

Một cách sạch sẽ

Request.UrlReferrer.GetLeftPart(UriPartial.Path) 

Có nghĩa là tôi muốn tất cả mọi thứ lên đến con đường. Nó phải trả về

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

Có, nhưng làm thế nào nó có thể trở lại /english/index_2011.aspx – JoshYates1980

Các vấn đề liên quan