我正在使用mvc中的ReturnUrl,但我有一些网址链接错误。
a href="/User/Login?returnurl=/Forum/Detail/@item.ID"
此链接转到Login视图并带有returnurl参数。
在登录页面中,我使用此代码
捕获returnurl查询字符串string url = Request.QueryString["returnurl"];
if (ModelState.IsValid)
{
if (db.Users.Any(x => x.Mail == model.EMail && x.Password == model.Password && x.IsDelete == false))
{
FormsAuthentication.SetAuthCookie(model.EMail, true);
if (!string.IsNullOrEmpty(url))
{
return RedirectToAction(url);
}
return RedirectToAction("Index", "Home");
当我点击登录后,我无法回到我的第一个网址。链接转为http://localhost:61476/User/Forum/Detail/3
(注意:"用户"包含在网址中)
我想转回这个网址:http://localhost:61476/Forum/Detail/3
答案 0 :(得分:0)
RedirectToAction
(您可以想象)将用户重定向到操作,并接受操作名称作为参数,但您要将URI传递给它
改为使用Redirect
:
if(!string.IsNullOrEmpty(url))
return Redirect(url);