C'è un sovraccarico del ActionLink di supporto che consente di specificare il frammento:
@Html.ActionLink(
"Link Text", // linkText
"Action", // actionName
"Controller", // controllerName
null, // protocol
null, // hostName
"fragment", // fragment
new { id = "123" }, // routeValues
null // htmlAttributes
)
produrrà (ipotizzando percorsi predefiniti):
<a href="/Controller/Action/123#fragment">Link Text</a>
UPDATE:
e se si desidera eseguire questa operazione all'interno di un'azione del controller eseguendo un reindirizzamento, è possibile utilizzare il metodo GenerateUrl:
public ActionResult Index()
{
var url = UrlHelper.GenerateUrl(
null,
"Action",
"Controller",
null,
null,
"fragment",
new RouteValueDictionary(new { id = "123" }),
Url.RouteCollection,
Url.RequestContext,
false
);
return Redirect(url);
}
fonte
2011-10-26 15:22:11
http://stackoverflow.com/questions/10690466/redirect-to-a-hash-from-the-controller-using-redirecttoaction – hidden