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

Foi útil?

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
scroll top