Crie parâmetro manualmente Returnurl
-
20-09-2019 - |
Pergunta
Eu tenho visualização como 'Home/Detalhes/5', ele pode ser acessar pelo usuário anônimo. Mas há o botão, que pode ser pressionado apenas por usuários registrados. Não tem problema, posso procurar solicitação.isauthenticated e, se anônimo, mostro o login do botão em vez do botão secreto
Mas o problema- ao pressionar o login, posso perder o endereço e os parâmetros da página. Como posso criar o botão de login e passar um parâmetro Returnurl? algo como
<%= Html.ActionLink("enter to buy", "LogOn", "Account", new { ReturnUrl = path to view with route value })%>
Eu vejo apenas uma solução estúpida
<%= Html.ActionLink("enter to buy", "LogOn", "Account", new { ReturnUrl = "home/details/" + ViewContext.RouteData.Values["id"] })%>
Mas eu não gosto de nomes de código rígidos do controlador
Solução
Você também pode usar Request.Url.AbsolutePath
.
<%= Html.ActionLink("enter to buy", "LogOn", "Account",
new { ReturnUrl = Request.Url.AbsolutePath })%>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow