1

私はこのSQLコマンドを持っています:

SELECT Jmeno, 
COUNT(CASE WHEN Ucast = 'TRUE' then 1 end) as Pocet_zapasu, 
SUM(CASE WHEN Branky>=0 then Branky end) as branek 
FROM Hraci 
INNER JOIN Ucast_Zapas ON Ucast_Zapas.ID_Hrace_zapas=Hraci.IDHrace  
INNER JOIN Zapas ON Zapas.ID_zapas=Ucast_Zapas.ID_zapasu_ucast  
INNER JOIN Kategorie ON Kategorie.IDkategorie=Zapas.Kategorie_zapas  
WHERE (Zapas.Druh=1) GROUP BY Jmeno

しかし、リストビューでこのコマンドを使用すると:

<asp:ImageButton ID="Image2" runat="server" ImageUrl="~/Icons/edit.png" PostBackUrl='<%#string.Format("/Default3.aspx?id={0}",Eval("IDHrace"))%>' />

このエラーがあります:

 DataBinding: 'System.Data.DataRowView' does not contain a property with the name 'IDHrace'. 

sqlcommand で Hraci.IDHrace が欠落しているため...しかし、以前の sqlcommand に Hraci.IDHrace を指定する理由がわかりません.何か考えはありますか?

4

2 に答える 2

2

あなたのクエリは を返しませんIDHrace

SELECTステートメントに含める必要があります。

SELECT 
Hraci.IDHrace,
Jmeno, 
COUNT(CASE WHEN Ucast = 'TRUE' then 1 end) as Pocet_zapasu, 
SUM(CASE WHEN Branky>=0 then Branky end) as branek 
FROM Hraci 
INNER JOIN Ucast_Zapas ON Ucast_Zapas.ID_Hrace_zapas=Hraci.IDHrace  
INNER JOIN Zapas ON Zapas.ID_zapas=Ucast_Zapas.ID_zapasu_ucast  
INNER JOIN Kategorie ON Kategorie.IDkategorie=Zapas.Kategorie_zapas  
WHERE (Zapas.Druh=1) GROUP BY Jmeno, Hraci.IDHRace
于 2013-07-11T08:10:05.043 に答える
0

IDHraceSQLステートメントで選択する必要があります

于 2013-07-11T08:10:03.453 に答える