C# 超链接模板字段单击将值传递给pageB以显示其详细信息

C# 超链接模板字段单击将值传递给pageB以显示其详细信息,c#,asp.net,webforms,dynamic-pages,C#,Asp.net,Webforms,Dynamic Pages,我不熟悉这一点: 在VisualStudio2010中,asp.net 网页A有一个gridview,其中有一列companyid的超链接: <asp:TemplateField HeaderText="Company" ItemStyle-Width="20%" > <ItemTemplate> <asp:HyperLink Text='<%# (Eval("Company"))%>' ID="HyperLink1"

我不熟悉这一点:

在VisualStudio2010中,asp.net

网页A有一个gridview,其中有一列companyid的超链接:

<asp:TemplateField HeaderText="Company" ItemStyle-Width="20%" >
     <ItemTemplate>
         <asp:HyperLink Text='<%# (Eval("Company"))%>' ID="HyperLink1" 
                       Target="_blank" runat="server"  
                        NavigateUrl= WHAT SHOULD I PUT HERE TO NAVIGATE TO PAGE B WHICH IS ALSO IN THE SOLUTION
     </ItemTemplate>
</asp:TemplateField>


您可以发送查询字符串并通过request.params获取它

 <asp:HyperLink Text='<%# (Eval("Company"))%>' ID="HyperLink1" 
                   Target="_blank" runat="server"  
                    NavigateUrl="page2.aspx?variablename=value"/>
另一页 我认为它应该会起作用


受保护字符串GetCompanyUrl(对象companyNum)
{
返回“/NewPageName.aspx?companyId=“+companyNum.ToString()”;
}
使用


“~/”
在ASP.NET URL中表示该地址相对于当前应用程序

request.params["variablename"]
<asp:TemplateField HeaderText="Company" ItemStyle-Width="20%" >
                        <ItemTemplate>
                            <asp:HyperLink Text='<%# (Eval("Company"))%>' ID="HyperLink1" Target="_blank" runat="server" 
                            NavigateUrl='<%# GetCompanyUrl(Eval("Company"))%>'/>
                        </ItemTemplate>
                    </asp:TemplateField>

protected string GetCompanyUrl (object companyNum)
    {
        return "./NewPageName.aspx?companyId=" + companyNum.ToString(); 
    }
<asp:HyperLink Text='<%# (Eval("Company"))%>' ID="HyperLink1" Target="_blank" runat="server" 
NavigateUrl='~/PageB.aspx?companyId=<%# Eval("CompanyID")%>'/>