将我的页面重定向到存储为会话变量的页面URL

时间:2011-11-03 04:35:36

标签: asp.net-mvc asp.net-mvc-3

我在页面上有以下内容:

@{ Session["CurrentUrl"] = Request.Url.ToString(); }

然后我调用另一个页面,在该页面的action方法中,我尝试使用以下内容返回原始页面

return Session["CurrentUrl"] == null ?
    Index() :
    Redirect(Session["CurrentUrl"]);

该方法似乎很好但是当我尝试实现这个时,我收到错误说:

Error   51  The best overloaded method match for 'System.Web.Mvc.Controller.Redirect(string)' has some invalid arguments    
"Error  52  Argument 1: cannot convert from 'object' to 'string') 

任何人都可以告诉我这里有什么问题。我不知道如何解决这个错误。

1 个答案:

答案 0 :(得分:1)

您需要将Session["CurrentUrl"]转换为string,因为该方法需要字符串

return Session["CurrentUrl"] == null ?
    Index() :
    Redirect((string)Session["CurrentUrl"]);