asp.net如何回到上一页

时间:2011-02-17 05:51:23

标签: asp.net

我开发了一个基于角色的应用程序,我有管理员,操作员等角色。我检查的每个页面当前用户是否已分配角色然后允许..在我的情况下我想在他们键入时限制“操作员”在“Administrator.aspx”的URL中并进入内部..在这种情况下如果用户在PAGE A上并尝试点击管理员URL它应该重定向回PAge A ..Page A也可以是任何其他页面名称... 。如何实现这一点我正在尝试这种方式,但它不起作用..

       if (ViewState["URLReferrer"] == null)
            ViewState["URLReferrer"] = Request.UrlReferrer;

        if (!HttpContext.Current.User.IsInRole("Control User"))
        {
            //If user is trying to access the admin page ..send back to the page where he is coming from.
            Response.Redirect(Convert.ToString(ViewState["URLReferrer"]));
        }

1 个答案:

答案 0 :(得分:1)

我试过了。 UrlReferer具有Uri类型,但您需要字符串才能使用Response.Redirect

if (Request.UrlReferrer == null || string.IsNullOrEmtpy(Request.UrlReferrer.AbsoluteUri))
    Response.Redirect("defaultPage")
else
    Response.Redirect(Request.UrlReferrer.AbsoluteUri);

以上代码适用于我的测试网站。试试吧。