Asp.net 基于ServerVariable在datagrid中显示/隐藏超链接

Asp.net 基于ServerVariable在datagrid中显示/隐藏超链接,asp.net,vb.net,datagrid,.net-2.0,request.servervariables,Asp.net,Vb.net,Datagrid,.net 2.0,Request.servervariables,在使用.NET 2的datagrid中,我有以下内容: <asp:HyperLink runat="server" NavigateUrl='<%# "edit.aspx?f=" & DataBinder.Eval(Container.DataItem, "forum_id") & "&t=" & DataBinder.Eval(Container.DataItem, "thread_id") & "&p=" & DataBin

在使用.NET 2的datagrid中,我有以下内容:

<asp:HyperLink runat="server" NavigateUrl='<%# "edit.aspx?f=" & DataBinder.Eval(Container.DataItem, "forum_id") & "&t=" & DataBinder.Eval(Container.DataItem, "thread_id") & "&p=" & DataBinder.Eval(Container.DataItem, "post_id") %>' Text="Edit" ID="Hyperlink1"></asp:HyperLink>
如何基于
servervariable
在每篇文章上显示/隐藏超链接


因此,如果我在一个特定页面中有10篇文章,其中3篇是由用户x发布的,那么我如何仅在用户x查看该页面时显示该超链接,仅在用户x创建的文章上显示该超链接?

尝试使用以下代码添加可见属性:

<asp:HyperLink visible='<%# Request.ServerVariables("LOGON_USER") == "x" %>' runat="server" NavigateUrl='<%# "edit.aspx?f=" & DataBinder.Eval(Container.DataItem, "forum_id") & "&t=" & DataBinder.Eval(Container.DataItem, "thread_id") & "&p=" & DataBinder.Eval(Container.DataItem, "post_id") %>' Text="Edit" ID="Hyperlink1"></asp:HyperLink>

您确定您需要的是Request.ServerVariables(“登录用户”)吗?来自MSDN:LOGON\u USER:用户在连接到Web服务器时模拟的Windows帐户。使用REMOTE_USER、UNMAPPED_REMOTE_USER或AUTH_USER查看请求标头中包含的原始用户名。登录用户持有与这些其他变量不同的值的唯一时间是您是否安装了身份验证筛选器。
<asp:HyperLink visible='<%# Request.ServerVariables("LOGON_USER") == "x" %>' runat="server" NavigateUrl='<%# "edit.aspx?f=" & DataBinder.Eval(Container.DataItem, "forum_id") & "&t=" & DataBinder.Eval(Container.DataItem, "thread_id") & "&p=" & DataBinder.Eval(Container.DataItem, "post_id") %>' Text="Edit" ID="Hyperlink1"></asp:HyperLink>