在Asp.Net Core 2.2中,可以使用自定义路由约定来解决区域路由问题。以下是一个示例:
public class AreaRouteTemplateProvider : IRouteTemplateProvider
{
public int? Order => null;
public string Template => "{area:exists}/{controller=Home}/{action=Index}/{id?}";
public string Name => null;
}
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc()
.AddRazorPagesOptions(options =>
{
options.Conventions.Add(new AreaRouteTemplateProvider());
});
}
现在,当你访问URL:/Admin/Home/Index时,将会自动调用Admin区域中的HomeController的Index方法,并显示Admin区域中的Index视图。
希望这个示例可以帮助你解决Asp.Net Core 2.2中的区域路由问题。