У меня есть этот яваскрипта код в представлении:Url.Action, Где параметр пришел из
function getUrl(id) {
var url = "@Url.Action("Product", "Product")/" + id;
return url;
}
и это конфигурация маршрутизации:
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "localized",
url: "{culture}/{controller}/{action}/{id}/{title}",
defaults: new { culture = "en", controller = "Home", action = "Index",
id = UrlParameter.Optional, title = UrlParameter.Optional},
constraints: new { culture = "en|fa" }
);
Что я ожидаю от Url .Action («Продукт», «Продукт») должен вернуть /en/Product/Product/
, но я получил /en/Product/Product/92
и 92 - это идентификатор текущего продукта, и я пытаюсь создать URL-адрес для следующего продукта. Я мог найти обходное решение благодаря трюку замены this answer, но теперь я просто хочу знать, почему это происходит.
Что вы подразумеваете под «Я пытаюсь создать URL для следующего продукта» ?, могли бы вы показать нам действие, которое вы собираетесь перенаправить с помощью ajax-звонка? – Ehsan