У меня есть область с именем "www" и маршрут, определенный как
endpoints.MapAreaControllerRoute(
name: "www-cms",
areaName: "www",
pattern: "{area:exists}/{pageName?}",
defaults: new { controller = "Cms", action = "Index" });
У меня нет других маршрутов, определенных (как часть этого примера).
Если я go в /www/
работает как положено, но также совпадает с /
, чего я не понимаю. Я могу исправить это, заменив {area:exists}
на жестко закодированный www
, но какой смысл в {area:exists}
, который есть во всей документации?!
Чтобы добавить еще немного безумия к этому, если затем объявить явный маршрут как этот
endpoints.MapAreaControllerRoute(
name: "www-cms-root",
areaName: "www",
pattern: "{pageName?}",
defaults: new { controller = "Cms", action = "Index" });
Он не работает вообще. Я должен указать area = "www"
в настройках по умолчанию, чтобы сделать эту работу.
Может кто-нибудь пролить свет на то, что происходит с маршрутизацией конечной точки этой области? А какая разница с MapControllerRoute
?