【问题标题】:Asp.Net Core app not working with other areasAsp.Net Core 应用程序不适用于其他领域
【发布时间】:2020-04-20 14:24:10
【问题描述】:

我已经发布了这个仍在测试中的应用程序。我使用 asp.net 核心身份框架来保证我的安全性。当我在不添加仪表板页面等其他内容的情况下发布应用程序时,一切正常,我可以路由到/Identity/Account/Manage/index 页面并查看我的个人资料。现在我添加了一个名为仪表板的新区域并创建了一些页面,如类别、标签等。这些都在各自的文件夹中。这是现在程序的结构
领域
--仪表板
---页面
----分类
------index.cshtml
------create.cshtml
----标签
------index.cshtml
------create.cshtml
--身份
---页面
----帐号

现在我已将应用程序部署到该网站,但它没有转到仪表板下的区域。甚至身份下的区域也不会再次导航。仪表板下的区域被识别,但当我导航到它时它们只是显示为空白。您可以使用此密码和用户名登录并查看我在说什么。用户名:OpMainControl 密码:room?@awaitcash# 这是网站http://www.masterlet.com 登录后,您可以尝试导航到通常的身份页面,例如 /Account/Identity/Manage 或 /Account/Identity/Manage/changepassword。或者您使用我在 /Dashboard/tags 和 /Dashboard/categories 中创建的新区域。我一直在尝试操纵这件事近 5 天,但无济于事。请帮忙!!

【问题讨论】:

  • asp.net 的哪个版本?区域在 2.X 中不是自动的(但在 3.x 中是自动的)
  • 我正在使用 2.2 如果上面的 url 没有打开请使用这个versionx-001-site1.atempurl.com
  • 您可能还想知道,在我发布之前,每个区域都可以在本地模式下正常工作。
  • 您是否将所有 .cshtml 文件都标记为“内容”?
  • 标记为“内容”是什么意思?

标签: c# asp.net asp.net-core asp.net-core-identity


【解决方案1】:

startup.cs 中有 Area 端点吗?

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

【讨论】:

  • 我已经尝试过你的代码,但它似乎适用于 Asp.Net Core 3.x
  • app.UseMvc(routes => { routes.MapRoute("areaRoute", "{area:exists}/{controller=Admin}/{action=Index}/{id?}"); routes.MapRoute( name: "default", template: "{controller=Home}/{action=Index}/{id?}"); });
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-01-13
  • 1970-01-01
  • 2019-11-20
  • 1970-01-01
  • 2019-10-25
  • 2013-06-29
  • 1970-01-01
相关资源
最近更新 更多