<asp:HyperLink ID="HyperLink4" runat="server" Font-Names="华文仿宋" Font-Size="17px" ForeColor="#00C000" NavigateUrl="Default.aspx?nowcityx="+sdrcitylist[1].ToString()&"&nowcityy="&sdrcitylist[2].ToString()><%= sdrcitylist[0].ToString() %></asp:HyperLink>其中sdrcitylist是从数据库返回的sqldatareader。我应该怎样写,我用<%=%>也报错。

解决方案 »

  1.   

    那肯定是错的啊  你直接用 if (dr.Read())
    {
      //读到数据后
       HyperLink4.Text=dr["字段"].ToString(); //不就OK了????
    }
      

  2.   

    你说的对,但是我的问题是HyperLink的个数是不一定的,所以我也不知道这样写的话是要写HyperLink几。
    而且我要改的是HyperLink的NavigateUrl。HyperLink是从数据库里出来的,数据库里有一条记录就需要一个HyperLink,而且每个HyperLink的NavigateUrl地址都不同,地址也是从数据库里查出来的。所以我在前台的页面写了个循环
    <%while (sdrcitylist.Read()){ %>
    <asp:HyperLink ID="HyperLink4" runat="server" Font-Names="华文仿宋" Font-Size="17px" ForeColor="#00C000" NavigateUrl="Default.aspx?nowcityx="+sdrcitylist[1].ToString()&"&nowcityy="&sdrcitylist[2].ToString()> <%= sdrcitylist[0].ToString() %> </asp:HyperLink>
    <%}%>
    而不是写在后台的.cs文件里
      

  3.   


    你以前是不是做 ASP 的呵呵。你的个想法还停留在ASP上。你不要去循环?直接改用 Repeater 控件做。如果不会就查查baidu.com 先看一下DEMO,不清楚再上CSDN问。
    看懂了你就清楚了
      

  4.   

    repeater控件是显示数据库数据的呀,我是要超链接,
      

  5.   

    哎~~~~~~~~~~~~
    参考:<repeater id="…" runat="server" >
     <ItemTemplate>
        <div><a href='<%# "show.aspx?id="+Eval("newsId") %>' ><%# Eval("newsTitle")</a></div>
     </itemtemplate>
    </repeater>
    算不算用了 Repeater,算不算是能连接?