我希望从我的数据集中评估两个字符串,以使用三元运算符来标识类描述。 运行此代码时,我继续收到编译器错误,指出“表达式已预期”。 我认为它与字符串的比较有关,但我已经尝试过其他比较运算符,似乎无法使其工作。
<ItemTemplate>
<tr>
<td><%# FormatDateTime(Eval("GameDate"), DateFormat.ShortDate)%></td>
<td class="<%# (Eval("Team1Score").ToString() > Eval("Team2Score").ToString()) ? 'Winner':'' %>"><%# Eval("Team1")%></td>
<td><%# Eval("Team1Score")%></td>
<td><%# Eval("Team2")%></td>
<td><%# Eval("Team2Score")%></td>
</tr>
</ItemTemplate>
以下是我的示例数据:
GameDate Team1 Team1Score Team2 Team2Score Winner
2012-04-14 Blues 5 Reds 3 Blues
2012-04-13 A's 4 B's 2 A's
2012-04-11 Blues 1 A's 1 Tie
2012-04-13 B's 3 Reds 2 B's
2012-04-10 Blues 7 B's 4 Blues
感谢您的帮助
答案 0 :(得分:7)
我认为问题是你试图在两个字符串之间进行比较。只需将值转换为int或类似的值进行比较。例如,将您的比较更改为如下所示:
<td class="<%# (Convert.ToInt32(Eval("Team1Score")) > Convert.ToInt32(Eval("Team2Score"))) ? 'Winner':'' %>"><%# Eval("Team1")%></td>
或者您可以将其转换为适当的类型:
<td class="<%# ((int)Eval("Team1Score") > (int)Eval("Team2Score")) ? 'Winner':'' %>"><%# Eval("Team1")%></td>
希望这有帮助!
答案 1 :(得分:1)
试试这个
<%#Eval("Status").ToString()=="1" ? "ClubMember" : "Free User" %>