VB.NET
Response.Redirect(Request.UrlReferrer.AbsolutePath & "?query=1")
这是一个如何导航到urlreferrer并包含新查询字符串的工作示例。
问题
当urlreferrer包含现有的查询字符串时,呈现的标记变为:
url.aspx?existing=1?query=1
由于第二个?,网址无法正确解析,而&
问题
如何确定urlreferrer是否已具有查询字符串并实现正确的代码以适应?
解
If (Request.UrlReferrer.OriginalString.Contains("?")) Then
Response.Redirect(Request.UrlReferrer.OriginalString & "&query=1")
Else
Response.Redirect(Request.UrlReferrer.OriginalString & "?query=1")
End If
AbsoluteUrl不包含查询字符串使用OrigionalString作为引荐来源。
答案 0 :(得分:1)
有点逻辑:
If Request.UrlReferrer.OriginalString.Contains("?") Then
...
Else
...
End If
答案 1 :(得分:1)
你可以查看是否有? in de Request.UrlReferrer.AbsolutePath:
If (Request.UrlReferrer.AbsolutePath.Contains("?")) Then
Response.Redirect(Request.UrlReferrer.AbsolutePath & "&query=1")
Else
Response.Redirect(Request.UrlReferrer.AbsolutePath & "?query=1")
End If