如何在ASP.NET Core中设置默认区域?

英格玛

我在ASP.NET Core 3.1应用程序(MVC)中使用区域。

现在,我希望所有没有显式区域的请求都默认进入“主”区域。这是我当前设置端点路由的方式:

app.UseEndpoints(endpoints =>
{
    // 1
    endpoints.MapControllerRoute(
        name: "area",
        pattern: "{area:exists}/{controller=Home}/{action=Index}/{id?}");

    // 2
    endpoints.MapAreaControllerRoute(
                       name: "default",
                       areaName: "Main",
                       pattern: "{area=Main}/{controller=Home}/{action=Index}/{id?}");
});

我的目标是:如果请求URL包含现有的区域名称,请使用路由[1]。如果没有区域名称,则使用路由[2](默认为“主”区域)。

我的问题:

  • 对“ / main / admin”的请求工作正常。
  • 请求“ / admin”的结果为404。

如何设置默认区域?

好,解决了 最后,这对我有用:

app.UseEndpoints(endpoints =>
{
    endpoints.MapControllerRoute(
               name: "default",
               pattern: "area:exists}/{controller=Home}/{action=Index}/{id?}");


     endpoints.MapAreaControllerRoute(
                name: "default",
                areaName: "Main",
                pattern: "{controller=Home}/{action=Index}/{id?}");
 });

有两种方法:

  1. 如果您未指定区域名称,它将在区域之外找到ControllerAction此外,重要区域应位于外部,Areas以使其如您所愿成为普通区域(默认区域)。

在此处输入图片说明

    app.UseEndpoints(endpoints =>
    {

        // 1
        endpoints.MapControllerRoute(
            name: "area",
            pattern: "{area:exists}/{controller=Home}/{action=Index}/{id?}");

        // 2
        endpoints.MapAreaControllerRoute(
                           name: "default",
                           pattern: "{controller=Home}/{action=Index}/{id?}");

    });
  1. 删除{area=Main}/图案中的多余部分
app.UseMvc(routes =>
{
   routes.MapControllerRoute(
      name: "area",
      template: "{area:exists}/{controller=Home}/{action=Index}/{id?}");

   routes.MapAreaControllerRoute(
      name: "default",
      areaName: "Main",
      template: "{controller=Home}/{action=Index}/{id?}");
   });

请参考以下主题以更好地理解

ASP.NET Core 2具有区域的默认路由

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Asp.net Core中缓存资源?

来自分类Dev

如何在asp.net中默认选择单选按钮

来自分类Dev

如何在ASP.NET Core中的.cshtml文件中获取当前的MVC区域名称

来自分类Dev

如何在新的ASP.NET Core中调用Web API非默认构造函数

来自分类Dev

如何在ASP .NET Core中创建Azure AD用户?

来自分类Dev

如何在ASP.NET Core中设置正确的AttachDbFilename相对路径?

来自分类Dev

如何在ASP.NET Core中设置cookie validateInterval?

来自分类Dev

无法在ASP.Net Core应用中设置默认和唯一区域性

来自分类Dev

默认情况下如何在ASP.NET Core中添加URL参数

来自分类Dev

如何在ASP.NET Core中获取IIS版本

来自分类Dev

如何在ASP.NET Core 3.0中调用UseWebRoot

来自分类Dev

如何在asp.net Core 3中更改默认端口

来自分类Dev

我如何将Json.NET设置为ASP.NET Core 3.1中的默认序列化器

来自分类Dev

如何在ASP .NET Core 3.1中设置请求超时

来自分类Dev

如何在VS Code中为ASP.NET Core设置默认端口?

来自分类Dev

如何在ASP.NET Core Web API中将新控制器设置为默认控制器

来自分类Dev

如何在ASP.NET CORE MVC中覆盖默认的Identity AccessDenied路由

来自分类Dev

如何在ASP.NET中设置默认参数

来自分类Dev

如何在asp.net中设置日历控件的默认日期

来自分类Dev

如何在asp.net 5中设置Auth cookie

来自分类Dev

如何在asp.net中默认选择单选按钮

来自分类Dev

如何在新的ASP.NET Core中调用Web API非默认构造函数

来自分类Dev

如何在ASP .NET Core中创建Azure AD用户?

来自分类Dev

无法在ASP.Net Core应用中设置默认和唯一区域性

来自分类Dev

如何在ASP.NET中动态设置图像URL

来自分类Dev

如何在asp.net mvc 中设置Iframe src?

来自分类Dev

如何在 .Net Core 中设置默认版本号

来自分类Dev

如何在 ASP.NET Core 中设置永不过期的 cookie?

来自分类Dev

maxReceivedMessageSize 如何在 Asp.net Core Api 中设置?

Related 相关文章

  1. 1

    如何在Asp.net Core中缓存资源?

  2. 2

    如何在asp.net中默认选择单选按钮

  3. 3

    如何在ASP.NET Core中的.cshtml文件中获取当前的MVC区域名称

  4. 4

    如何在新的ASP.NET Core中调用Web API非默认构造函数

  5. 5

    如何在ASP .NET Core中创建Azure AD用户?

  6. 6

    如何在ASP.NET Core中设置正确的AttachDbFilename相对路径?

  7. 7

    如何在ASP.NET Core中设置cookie validateInterval?

  8. 8

    无法在ASP.Net Core应用中设置默认和唯一区域性

  9. 9

    默认情况下如何在ASP.NET Core中添加URL参数

  10. 10

    如何在ASP.NET Core中获取IIS版本

  11. 11

    如何在ASP.NET Core 3.0中调用UseWebRoot

  12. 12

    如何在asp.net Core 3中更改默认端口

  13. 13

    我如何将Json.NET设置为ASP.NET Core 3.1中的默认序列化器

  14. 14

    如何在ASP .NET Core 3.1中设置请求超时

  15. 15

    如何在VS Code中为ASP.NET Core设置默认端口?

  16. 16

    如何在ASP.NET Core Web API中将新控制器设置为默认控制器

  17. 17

    如何在ASP.NET CORE MVC中覆盖默认的Identity AccessDenied路由

  18. 18

    如何在ASP.NET中设置默认参数

  19. 19

    如何在asp.net中设置日历控件的默认日期

  20. 20

    如何在asp.net 5中设置Auth cookie

  21. 21

    如何在asp.net中默认选择单选按钮

  22. 22

    如何在新的ASP.NET Core中调用Web API非默认构造函数

  23. 23

    如何在ASP .NET Core中创建Azure AD用户?

  24. 24

    无法在ASP.Net Core应用中设置默认和唯一区域性

  25. 25

    如何在ASP.NET中动态设置图像URL

  26. 26

    如何在asp.net mvc 中设置Iframe src?

  27. 27

    如何在 .Net Core 中设置默认版本号

  28. 28

    如何在 ASP.NET Core 中设置永不过期的 cookie?

  29. 29

    maxReceivedMessageSize 如何在 Asp.net Core Api 中设置?

热门标签

归档