是否可以在aspx中使用返回MVC视图的Response.Redirect?
我有一个login.aspx页面,我成功登录后需要重定向到〜/ Views / Home / index.cshtml中的视图这可能吗?我试图关注,但网址无法解决。
尝试:
Response.Redirect("~/Views/Home/Index.cshtml");
Response.Redirect("Home");
控制器是" HomeController"并且视图是" Index.cshtml"任何帮助如何调用控制器和查看或至少只是网址将有所帮助。
答案 0 :(得分:5)
Response.Redirect("/Home/Index");
怎么样 - 当然假设你有HomeController
Index
动作返回你正在寻找的视图(按照惯例,它将是一个视图与操作同名,除非您另行指定)。
答案 1 :(得分:3)
以下是我从.aspx
重定向到MVC视图的方式:
var page = HttpContext.Current.Handler as Page;
Response.Redirect(page.GetRouteUrl("yourRouteNameOrDefault",
new { Controller="Home", Action="Index"}), false);
让您远离实际路径中的硬编码,而是使用您的路由,并允许您构建routeParameters
。
答案 2 :(得分:1)
试试这个:
return RedirectToAction("Index");
假设它在同一个控制器中,如果不是:
return RedirectToAction("Index", "Home");
在MVC框架中你不直接重定向到视图,你重定向到Actions,那里我有一些逻辑,并根据Action的逻辑,它将选择一个视图并填写一个视图模型,如果必要
答案 3 :(得分:0)
试试这个:
Response.Redirect(Url.Action("Index", "Home"));
答案 4 :(得分:0)
试试这个
Response.Redirect("~/Home/Index");
答案 5 :(得分:-1)
var page = HttpContext.Current.Handler as Page;
Response.Redirect(page.GetRouteUrl("Default",
new { Controller = "Nameofcontroller", Action = "Nameofaction" }), false);