настроить свой маршрут, чтобы загрузить /AreaName/Home/Index
по умолчанию и при добавлении этогоПеремещение из области на страницу, без области в ASP.NET
<a asp-area="" asp-controller="Application" asp-action="Index"</a>
,
Index.cshtml
до Я ожидал бы, чтобы перейти к /Application/Index
, но при наведении курсора на ссылку url выглядит так: localhost:######/AreaName/Application/
вместо localhost:######/Application/
.
Я думаю, что моя маршрутизация немного выключена. Вот что я пробовал:
app.UseMvc(routes =>
{
routes.MapRoute(
name: "Default",
template: "{area}/{controller}/{action}/{id?}",
defaults: new { area = "AreaName", controller = "Home", action = "Index" }
);
routes.MapRoute(
name: "SomeName",
template: "{area}/{controller}/{action}/{id?}",
defaults: new { area = string.Empty, controller = "Application", action = "Index" }
);
}
Что я делаю неправильно?
Причина, по которой я устанавливаю область по умолчанию, заключается в том, что я хочу, чтобы эта область была загружена при запуске приложения. Но при этом теперь я не могу перейти из области –
Почему вы устанавливаете страницу по умолчанию внутри области? Если это необходимо, просто добавьте перенаправление внутри основного контроллера по умолчанию на корневом компьютере другому контроллеру внутри области –