为什么Eval语句显示错误的图像

时间:2016-07-12 12:52:15

标签: html asp.net

SQL(Active列的类型为bit):

id      Question            Active
1       Weather today       1

ASP.net Eval

<img src='<%# Eval("Active") == "1" ? "images/active.png" : "images/inactive.png" %>' />

HTML:

<img src="images/inactive.png">

为什么inactive.png图像显示而不是活动。

2 个答案:

答案 0 :(得分:3)

位字段对应于布尔值。您还需要进行类型转换以确保正确比较,因为Eval只输出对象。所以:

(bool)Eval("Active") == true

答案 1 :(得分:1)

您可以尝试投射结果:

((int)Eval("Active")) == 1 ? [...]

或正如对bool的评论所述:

((bool)Eval("Active")) == true ? [...]