【发布时间】:2020-02-13 08:40:35
【问题描述】:
我在我的 API 控制器中使用 RedirectToRoute 来重定向到 MVC 控制器。除了这个,我找不到好的解决方案:
return RedirectToRoute("Cv", new { action = "Cv/OpenCv" });
之前我在下面尝试过,但没有成功。
return RedirectToRoute("Cv", new { controller="Cv", action = "OpenCv" });
【问题讨论】:
-
我还有一个名为 Cv 的路由名称。 :) 。 RedirectToAction 在 API 控制器中不可用。
-
我看到了这个解决方案:)。它比我在第一个区块中使用的更好吗?谢谢你的努力!
-
Api 和 MVC 控制器使用不同的路由。 Api 控制器中的 RedirectToRoute 返回“System.Web.Http.Results.RedirectToRouteResult”,但 Mvc 控制器中的 RedirectToRoute 返回“System.Web.Mvc.RedirectToRouteResult”。我认为在这种情况下您可以只使用“重定向”方法。只是想知道你为什么需要这个?
-
您可以尝试创建一个Mvc UrlHelper (docs.microsoft.com/ru-ru/dotnet/api/…) 实例并使用RouteUrl 方法从路由参数构建一个Url,然后调用Redirect 方法。
标签: c# asp.net asp.net-mvc