asp.net
  • sql
  • url
  • hyperlink
  • data-binding
  • 2009-07-07 71 views 0 likes 
    0

    我認爲它可能以前曾被問過,但我無法找到正確的答案,所以我在這裏問。我已經添加了一個工作正常的數據源,我想要一個功能,我從數據庫中查詢前n個條目並添加超鏈接。想想它像最新消息! DataList的ItemTemplate內的超鏈接標記是這樣的。將sql查詢輸出添加到asp.net中的超鏈接

    <asp:HyperLink ID="HyperLink1" runat="server" 
           Text='<%# Eval("News_Id") %>' NavigateUrl="~/News.aspx?NewsId=<%#Eval("News_Id") %> " runat="server" /> </asp:HyperLink> 
    

    但是,我得到錯誤爲「錯誤創建控制,服務器標記不正確」。它報告報價放置的錯誤。

    我知道我可以使用datanavigateurl屬性,但我想用這種方式編寫它。如上面的標記所寫。我怎麼能夠?

    在重新將其寫入

    NavigateUrl='~/Product.aspx?DVDID=<%#Eval("Title") %> ' 
    

    我碰到下面的網址

    http://localhost:61221/Product.aspx?DVDID= <%#的eval( 「標題」)%>

    +0

    這個問題的標題是絕對誤導。這是關於數據綁定的,而不是SQL查詢本身。 – Cerebrus 2009-07-07 07:12:18

    回答

    2

    試試這個:

    <asp:HyperLink ID="HyperLink1" runat="server" 
        Text='<%# Eval("News_Id") %>' 
        NavigateUrl='<%#Eval("News_Id", "~/News.aspx?NewsId={0}") %>' 
        runat="server" /> 
    </asp:HyperLink> 
    

    <%#Eval()%>必須在單引號內,否則i t拋出錯誤。

    要在綁定標記字符串連接,您可以使用此:

    <%# "~/News.aspx?NewsId=" + Eval("News_Id").ToString() %> 
    
    +0

    在這樣做,我得到以下作爲超鏈接 的http://本地主機:61221/Product.aspx DVDID = <%#的eval( 「標題」)%> 它不處理評估和演示 – 2009-07-07 06:45:34

    相關問題