Я не могу понять, как это решить.У меня есть два URL.Это /my-url-1
и /my-url-2
.Оба переходят в разные виды.
Дело в том, что у меня есть ActionLink для вида /my-url-1
, который должен составить /my-url-2
и перейти к этому виду.
Проблема в том, что ActionLink делает /my-url-1/my-url-2
URL-адресом, а не просто /my-url-2
.
Я два дня искал способ его исправить, но ничего не смог найти.
PD: Я не использую Области, поэтому, пожалуйста, не говорите мне, что я просто должен поставить параметр "area" как "".
Это два URL-адреса, которые отправляются на разные контроллеры и выполняются разные действия.
Просмотр с ActionLink (URL: /my-url-1
):
<div class="btn-index-container">
@Html.ActionLink("Url 2", "MyAction", "MyController")
</div>
Этот ActionLink долженрендер:
<a href="/my-url-2">Url 2</a>
Но это рендеринг:
<a href="/my-url-1/my-url-2">Url 2</a>
, где /my-url-1
мой текущий URL
Конфигурация маршрута
routes.MapRoute(
name: "route1",
url: "my-url-2", //without parameters
defaults: new { controller = "MyController", action = "MyAction" },
);
routes.MapRoute(
name: "route2",
url: "my-url-1", //without parameters too
defaults: new { controller = "MyController2", action = "MyAction2" }
);
Итак, когда я перехожу к localhost:port/my-url-1
, он загружает MyAction2
, который отображает представление.Это представление внутри ActionLink
(описано выше), которое должно отображать ссылку /my-url-2
.