0

我是新来的:

在 Visual Studio 2010 中,asp.net

网页 A 有一个带有 companyid 超链接列的 gridview:

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

我想导航到也在解决方案文件中的另一个页面,但我不知道要使用哪个地址,因为它不是一些已经托管的链接,例如“google.ca”

对于新网页,我不想要任何按钮或类似的东西,我只想要一个显示公司详细信息的页面,使用“ select * from table where companyid= 'value_from_pageA_hyperlink'。我如何构建页面,使其 url 可能类似于www.somepage/key=?“或者可以我设置了一个全局值,以便我可以将超链接中的 companyid 传递到其他页面?

我已经被那些疯狂了。

4

3 回答 3

1

利用

<asp:HyperLink Text='<%# (Eval("Company"))%>' ID="HyperLink1" Target="_blank" runat="server" 
NavigateUrl='~/PageB.aspx?companyId=<%# Eval("CompanyID")%>'/>

"~/"在 ASP.NET URL 中表示该地址是相对于当前应用程序的。

于 2013-12-03T19:33:14.493 回答
0

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

 <asp:HyperLink Text='<%# (Eval("Company"))%>' ID="HyperLink1" 
                   Target="_blank" runat="server"  
                    NavigateUrl="page2.aspx?variablename=value"/>

并通过

request.params["variablename"]

在另一个页面上,我认为它应该工作

于 2013-12-02T14:49:16.017 回答
0

http://msdn.microsoft.com/en-us/library/6c3yckfw(v=vs.100).aspx

<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(); 
    }
于 2013-12-03T18:49:17.947 回答