【问题标题】:Area routing in ASP.NET Core 5.0ASP.NET Core 5.0 中的区域路由
【发布时间】:2021-05-04 00:45:31
【问题描述】:

使用 ASP.NET Core 5.0 MVC,应用程序使用名为 Counselor 的区域,并带有 HomeControllerIndex 操作。

Layout.cshtml中添加了一个链接给辅导员。

另外,端点已经在 Startup.cs 中添加了端点

问题:

创建的链接错误 (localhost:44308/?area=Counselor) 但应该是localhost:44308/Counselor/Home/Index

【问题讨论】:

  • 这是一个official doc,我用你的设置测试,它可以工作。如果你尝试在浏览器中刷新你的页面,它会改变吗?

标签: visual-studio asp.net-core asp.net-core-mvc


【解决方案1】:

由于我今天也遇到了这个问题,所以我是这样解决问题的:

  1. 确保您在项目设置中启用了 SSL(我不知道为什么应该启用它)see image here

  2. 在 Startup.cs 中试试这个代码:

    endpoints.MapAreaControllerRoute(
        name: "Counselor",
        areaName: "Counselor ",
        pattern: "Counselor/{controller=Home}/{action=Index}/{id?}");
  1. 然后不要忘记在控制器的开头添加 [Area("Counselor")],如下所示:
    namespace Project.Controllers
    {
        [Area("Counselor")]
        public class HomeController : Controller
        {

【讨论】:

    猜你喜欢
    • 2021-12-29
    • 2022-10-24
    • 1970-01-01
    • 1970-01-01
    • 2019-07-21
    • 1970-01-01
    • 2017-12-30
    • 1970-01-01
    • 2019-03-05
    相关资源
    最近更新 更多