是否有RESPONSE.REDIRECT的直接指令转到上一页?

Ahm*_*mad 4 vb.net asp.net

我有一个Web应用程序(帮助台票务系统),带有一个收件箱来监控传入的请求,并制作了一些过滤器按钮,帮助用户根据请求者姓名,创建日期等安排请求.

每个过滤器只会调用同一页面,但会在查询字符串中添加一些代码.例如,如果用户按下标有[按日期排序]的按钮,则该按钮背后的代码如下:

Response.Redirect("Inbox.aspx?Filter=DATE")
Run Code Online (Sandbox Code Playgroud)

另一个按钮将类似地执行:

Response.Redirect("Inbox.aspx?Filter=NAME")
Run Code Online (Sandbox Code Playgroud)

GridView将填充一些行(传入请求的摘要),并按用户的首选项排序.

一旦用户决定查看任何传入请求的完整详细信息,将导致任何行的单击

Response.Redirect("Details.aspx?REQ_ID=123") 
'where 123 is the request number the user clicked
Run Code Online (Sandbox Code Playgroud)

然后,用户有机会使用Details.aspx页面上的几个按钮更新/编辑请求,但是每个按钮都需要将用户返回到收件箱,其中包含用户在查看Details.aspx之前具有的过滤器的首选项.页.

换句话说,一旦用户按下Details.aspx页面上的按钮,我想执行以下操作

    Sub btnUpdateRequest() Handles btnUpdateRequest.Click

    'My code here for the button action (update/edit/send/cancel)
    ' once the job is done, return the user to the Inbox.aspx page with the same filter

    Response.Redirect("javascript:History.Back()")
    End Sub
Run Code Online (Sandbox Code Playgroud)

但我知道Response.Redirect不接受javascript,我不想在Code Behind文件和ASPX文件(添加OnClientClick属性)之间拆分代码,因为我需要同时执行VB指令并重定向用户.

jnc*_*ton 5

您可以重定向到引荐来源网址.您应该首先检查它是否可用.

if (Request.UrlReferrer.AbsoluteUri != null) {
    Response.Redirect(Request.UrlReferrer.AbsoluteUri);
}
Run Code Online (Sandbox Code Playgroud)