Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 4 为什么我的url中需要主页?_Asp.net Mvc 4 - Fatal编程技术网

Asp.net mvc 4 为什么我的url中需要主页?

Asp.net mvc 4 为什么我的url中需要主页?,asp.net-mvc-4,Asp.net Mvc 4,我已经确定了路线 routes.MapRoute( name: "NoRightsRoute", url: "norights", defaults: new { controller = "Home", action = "NoRights" } ); 在检查用户是否有权限时,如果他们没有权限,我会将他们重定向到此路由 Response.RedirectToRoute("NoRightsRoute"); 它重定向到的url为 https://localhost/no

我已经确定了路线

routes.MapRoute(
    name: "NoRightsRoute",
    url: "norights",
    defaults: new { controller = "Home", action = "NoRights" }
);
在检查用户是否有权限时,如果他们没有权限,我会将他们重定向到此路由

Response.RedirectToRoute("NoRightsRoute");
它重定向到的url为

https://localhost/norights
Home被删除了,这是我所期望的,因为MVC假设是这样,但我得到了一个错误

"The resource could not be found"
如果我将url更改为

https://localhost/Home/norights

页面加载正确。为什么我的url中需要“主页”?是否有某种方法可以将“主页”包含在url中,以便重定向正常工作,或者在假定的情况下加载页面?

您可以尝试删除默认设置,并在url中硬编码主页

routes.MapRoute(
    name: "NoRightsRoute",
    url: "Home/norights",
);

但请检查其他链接/重定向是否不受影响

在此之前是否定义了其他路线?是的,该页面上还有3-4条其他路线。它们可能相互冲突吗?第一个选项将源控制器放在url中。第二个选项将Home放在URL中,重定向现在可以工作了。谢谢:)@请检查其他路线/链接是否也受到影响!谢谢你的警告。随时注意,只要浏览其他页面,一切正常。再次感谢你