2

我有像'home/details/5'这样的视图,它可以由匿名用户访问。但是有按钮,只有注册用户才能按下。没问题,我可以查看 Request.IsAuthenticated ,如果匿名我显示按钮登录而不是秘密按钮

但问题 - 当按下登录时,我可能会丢失页面的地址和参数。如何创建登录按钮并传递参数 ReturnUrl ?就像是

 <%= Html.ActionLink("enter to buy", "LogOn", "Account", new { ReturnUrl = path to view with route value })%>

我只看到愚蠢的解决方案

<%= Html.ActionLink("enter to buy", "LogOn", "Account", new { ReturnUrl = "home/details/" + ViewContext.RouteData.Values["id"] })%>

但我不喜欢硬编码控制器的名称

4

1 回答 1

5

您也可以使用Request.Url.AbsolutePath.

<%= Html.ActionLink("enter to buy", "LogOn", "Account", 
    new { ReturnUrl = Request.Url.AbsolutePath })%>
于 2010-03-17T02:15:04.427 回答