C# 重定向路由在ASP.NET MVC项目中不工作
我正在构建一个带有多个控制器的有点复杂的ASP.NET MVC网站。在每个控制器的Index()。 然而,由于某些原因,重定向根本不起作用。我使用C# 重定向路由在ASP.NET MVC项目中不工作,c#,asp.net-mvc,redirect,C#,Asp.net Mvc,Redirect,我正在构建一个带有多个控制器的有点复杂的ASP.NET MVC网站。在每个控制器的Index()。 然而,由于某些原因,重定向根本不起作用。我使用RedirectToRoute(“默认”)重定向到默认路由,但不知何故,我当前所在的控制器的Index()-方法再次被调用,没有发生重定向。这会导致无限循环,并且在某个点浏览器会显示重定向错误。 我的默认路线定义如下: routes.MapRoute( name: "Default", url: "{controller}/{actio
RedirectToRoute(“默认”)
重定向到默认路由,但不知何故,我当前所在的控制器的Index()-方法再次被调用,没有发生重定向。这会导致无限循环,并且在某个点浏览器会显示重定向错误。
我的默认路线定义如下:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}",
defaults: new { controller = "Home", action = "Index" }
为什么不重定向到主控制器的索引操作?因为您正在重定向到与现在相同的路由。“默认”路由上指定的默认值仅在“控制器”和“操作”没有值时适用,情况并非如此-您正在控制器的特定操作中运行。 也许你想要的是重定向到你的应用程序的根目录,这通常是你首先要去的地方(你的“默认”路径似乎表明了这一点)