2

我有一个 ASP.NET Web 表单应用程序(不是 MVC)设置使用在我的 Global.asax 文件中定义的路由,如下所示;

routes.Add("Login", New Route("login", New CustomRouteHandler("~/authenticate.aspx")))
routes.Add("AdditionalInfo", New Route("additional-information", New CustomRouteHandler("~/secure/additionalInfo.aspx")))

在整个应用程序中,需要对用户进行身份验证,这会将他们简单地重定向到登录屏幕。

我遇到的问题是如何将它们重定向回需要身份验证的位置?使用沼泽标准网址,我会做类似的事情;

http://www.site.com/login.aspx?returnURL=someReturnURL

网络表单中的路线甚至可能吗?

4

2 回答 2

2

在 Page_Load 事件中检索 QueryString 参数并将其保存在

ViewState["returnURL"] = Request.QueryString["returnURL"];

然后,在按钮单击事件中进行成功身份验证的重定向:

Response.Redirect(ViewState["returnURL"].ToString());
于 2012-11-20T14:25:41.860 回答
0

通常当用户点击登录按钮时,URL 不会改变。所以你仍然可以使用 'Request.QueryString["returnURL"];' 读取数据

于 2015-12-03T08:39:31.320 回答