我正在尝试在ASP.Net MVC Core 2.1应用程序中为管理员实现区域。
我已将该区域的路线配置如下:
app.UseMvc(routes =>
{
routes.MapRoute(
name: "areas",
template: "{area:exists}/{controller=Home}/{action=Index}/{id?}"
);
});
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
在_Layout.cshtml中,我有:
<a asp-area="Admin" asp-controller="Admin" asp-action="Index">Admin</a>
在AdminController中,我有:
[Area("Admin")]
public class AdminController : Controller
{
public IActionResult Index()
{
return View();
}
}
Razor生成的URL错误不像http://localhost:44327/Admin/Admin/Index,而是https://localhost:44327/Admin?area=Admin。