【问题标题】:ASP.net how to make RedirectToRouteResult() to a url configured in MapRoute()ASP.net 如何将 RedirectToRouteResult() 设置为 MapRoute() 中配置的 url
【发布时间】:2017-10-10 02:35:55
【问题描述】:

我在 RouteConfig.cs 中设置了一个路线图,例如:

        routes.MapRoute(
            name: "Default",
            url: "prefix/{controller}/{action}",
            defaults: new { controller = "MainView", action = "Index" }
        );

我想在某些情况下在 MainView/Index 中进行重定向,所以我编写如下代码,并返回它:

        RedirectToRouteResult redirect = new RedirectToRouteResult(
                new System.Web.Routing.RouteValueDictionary(new { action = "Home", controller = "Account"}));

我希望它会返回如下 URL:localhost/prefix/Account/Home,但结果是 localhost/Account/Home。如何使重定向结果为 localhost/prefix/Account/Home?

谢谢!

【问题讨论】:

  • 您是否在使用 mvc 库并尝试执行 Return RedirectToAction("Home", "Account"); ?
  • 是的,我使用了 mvc5,我也尝试了 RedirectToAction("Home", "Account"),它仍然返回意外的 url。

标签: asp.net redirect routes


【解决方案1】:

好吧,我犯了一个愚蠢的错误,这个动作有[Authorize]属性,所以返回url就是这个属性。我更正了这段代码并获得了预期的网址。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-02-14
    • 1970-01-01
    • 2021-09-28
    • 2010-10-14
    • 1970-01-01
    • 2021-02-06
    • 1970-01-01
    相关资源
    最近更新 更多