答案1
您是否在应用程序中创建了区域?因为如果您创建了区域并将用户控制器文件夹放在其中,那么您可以获得两次控制器名称。正如我所看到的,它显示了您的第一个控制器名称用户是小写的,因为一般当我们创建区域时,我们大多数时候都用小写来命名它。
用户控制器名称在 URL 中出现两次,因为它在 URL 中包含区域名称,如下所示:
routes.MapRoute(
name: "user_route",
template: "{area:required}/{controller:required}/{action}/{id?}",
defaults: new { area = "users", controller = "Users"
});
从路线中移除区域。
routes.MapRoute(
name: "user_route",
template: "{controller:required}/{action}/{id?}",
defaults: new { controller = "Users", action = "Index"
});
这样,您的控制器名称将只会在 URL 中出现一次。
笔记:仅当您在应用程序中创建了区域时才有用。如果您没有创建区域,请告诉我,我们会找到其他解决方案。
希望这对你有帮助。
谢谢。
答案2
我发现了问题所在。我必须更改控制器的名称才能使其正常工作。我的应用程序可能已经混淆了,因为控制器名称与视图的名称相同。