2009-07-07 1 views
0

私は以前に尋ねられたかもしれないが、私は正しい答えを見つけることができなかったと思うので、私はここで尋ねている。私は正常に動作しているデータソースを追加しました、私はデータベースから上位nエントリを照会し、ハイパーリンクを追加する機能が必要でした。それは最新ニュースのように考えてください! DataListのItemTemplate内のハイパーリンクのマークアップはこれです。asp.netのハイパーリンクにsqlクエリの出力を追加

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

しかし、「コントロールの作成中にエラーが発生しました。サーバータグが正常に形成されていません」というエラーが表示されます。引用符が置かれている場所のエラーを報告します。

私はdatanavigateurlプロパティを使用することができますが、私はこのように記述したいと思います。上記のマークアップに書かれているように。どうやって?私は、URL

http://localhost:61221/Product.aspx?DVDID= <%の#エバール( "タイトル")%>

+0

この質問のタイトルは間違いなく誤解を招くおそれがあります。これは、SQLクエリそのものではなく、データバインディングに関するものです。 – Cerebrus

答えて

2

として以下を得る

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

に書き込む再たら

はこれを試してみてください。

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

<%#Eval()%>は一重引用符で囲まなければなりません。エラーをスローします。

があなたの結合タグ内の文字列を連結するには、これを使用することができます:

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

そうする時、私はハイパーリンク HTTPとして、以下の取得:// localhostを:?61221/Product.aspx DVDID = <%#エバール( "タイトル")%>を 評価 –

+0

は私の答えを更新処理していません、新しいものをお試しください。 – Canavar

+0

私はその方法も知っています。私はリテラルテキストと評価メソッドを連結したいと思っていました。 –

関連する問題