Asp.net HLink as查询字符串中的ASP用户ID

Asp.net HLink as查询字符串中的ASP用户ID,asp.net,vb.net,Asp.net,Vb.net,我用一个非常简单的方法来解决这个问题,基本上我是在尝试将当前登录的用户名作为查询字符串从ASP.Net站点发送到另一个页面。我已经从VB代码中的一个按钮上的重定向工作了,但是我现在需要它在aspx页面中工作 <asp:HyperLink ID="HyperLink1" runat="server" Text="My Details" NavigateUrl="/wfMyDetails.aspx?UserID=<%: Membership.GetUser().UserName %&g

我用一个非常简单的方法来解决这个问题,基本上我是在尝试将当前登录的用户名作为查询字符串从ASP.Net站点发送到另一个页面。我已经从VB代码中的一个按钮上的重定向工作了,但是我现在需要它在aspx页面中工作

<asp:HyperLink  ID="HyperLink1" runat="server" Text="My Details" NavigateUrl="/wfMyDetails.aspx?UserID=<%: Membership.GetUser().UserName %>" />

该链接可以工作,但它会按字面意思传递,而不是获取用户名。我尝试过几种不同的方法,但迄今为止似乎没有一种有效

任何建议都将不胜感激,我可能会保留一些头发


谢谢,Jon。

您不能在Servertags中使用嵌套代码

您必须在CodeBehind中设置导航URL,例如在PageLoad上

HyperLink1.NavigateUrl = "/wfMyDetails.aspx?UserID=" & Membership.GetUser().UserName
或者你只是使用一个普通的


仅从安全角度发表评论-请记住,用户可以更改用户名并为其他用户访问“wfMyDetails”页面。不确定这在您的情况下是否是一个问题?我最后是这样做的:受保护的子页面加载(ByVal sender作为对象,ByVal e作为System.EventArgs)处理我。加载LNKMyDetails.NavigateUrl=“/wfMyDetails.aspx?UserID=“&Membership.GetUser()。用户名结束子页面谢谢
<a href="/wfMyDetails.aspx?UserID=<%: Membership.GetUser().UserName %>">MyLink</a>