起動時に次のルートで.netコア2.2ルーティングからasp.netコア3のエンドポイントルーティングに移行しようとしています
私の.netコア2.2ルートは
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
routes.MapRoute(
name: "AppArea",
template: "{area:exists}/{controller=Home}/{did?}/{action=Index}/{id?}");
.netコア3ルート
app.UseEndpoints(routes =>
{
routes.MapControllerRoute(
name:"default",
pattern:"{controller=Home}/{action=Index}/{id?}");
routes.MapAreaControllerRoute(
name: "areas",
areaName: "myarea",
pattern: "{area:exists}/{controller=Home}/{did?}/{action=Index}/{id?}");
routes.MapRazorPages();
});
私の問題は。[net core 2.2上記の構成マップの複数のエリア(area1
area2
など)にありますが、.net coreでは、動的エリア名ではなくハードコードエリア名を指定した場合にのみ機能します
エリア名を指定しない場合は、これを使用できます。
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
endpoints.MapControllerRoute(
name: "areas",
pattern: "{area}/{controller}/{did?}/{action=Index}/{id?}");
});