.NET Core 2.1将区域添加为url参数

时间:2018-09-16 21:32:19

标签: c# .net .net-core asp.net-core-mvc asp.net-core-routing

我正在尝试在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

0 个答案:

没有答案