Как скрыть / удалить имя «Область» в URL ASP.NET MVC (ASP.NET Core) - PullRequest
0 голосов
/ 24 сентября 2018

Я создал приложение, используя 'Area', основываясь на роли пользователя.Есть 3 области: администратор, утверждающий и податель.Если щелкает ссылку, отображается название области в URL.Я не хочу показывать название области в URL.Как этого добиться?(MVC с ASP.NETCORE)

1 Ответ

0 голосов
/ 25 сентября 2018

Как правило, вы не должны удалять Area Name из созданного URL.Area Name используется, чтобы указать, где найти контроллер.Например, если вы следуете за Областями в ASP.NET Core , у него будет несколько разных HomeController в dfferent Area.Без имени области он не сможет перенаправить на конкретный контроллер с Home/Index.

Для изменения маршрута для контроллера в области, которая также будет генерировать URL-адрес без имени области, вы можете попробовать атрибут Route.

Например, у меня есть AdminController с [Route("AdminIndex")]

    [Area("Admin")]
public class AdminController : Controller
{
    [Route("AdminIndex")]
    public IActionResult Index()
    {
        return View();
    }
}

Код для URL.

<a asp-area="Admin" asp-controller="Admin" asp-action="Index">Admin Index</a>

URL Result.

<a href="/Index">Admin Index</a>
...