Mam następujący problem: Na przykład mam taką trasę:
routes.Add(new Route("forums/thread/{threadOid}/last", new MvcRouteHandler())
Defaults = new RouteValueDictionary(
new { controller = "Thread", action ="ShowThreadLastPostPage"}),
Constraints = new RouteValueDictionary(new { threadOid = @"^\d+$" })
}
);
Czy istnieje sposób za pomocą metody RedirectToAction, aby przejść do adresu URL w następujący sposób:
forums/thread/{threadOid}/last#postOid
asp.net
asp.net-mvc
fragment-identifier
inikulina
źródło
źródło
Odpowiedzi:
Myślę, że powinieneś użyć tej
Redirect
metody,Url.RouteUrl
aby to osiągnąć.return Redirect(Url.RouteUrl(new { controller = "Thread", action = "ShowThreadLastPostPage", threadOid = threadId }) + "#" + postOid);
źródło
Kolejna alternatywa z
Url.Action
:return Redirect(Url.Action("ShowThreadLastPostPage", "Thread", new { threadOid = threadOid }) + "last#" + postOid);
źródło