あるテーブルから[走行距離]の項目を取得して、
それが0より大きいならFalse、それ以外ならNullの場合も含めてTrueにする、
というSQLを書こうと思ったのですが、これをASPでDataBindして呼び出そうとすると、
「指定されたキャストは有効ではありません。」
というエラーが表示されました。
具体的には次のようなSQLを書いています。
SELECT
CASE
WHEN (走行距離>0) THEN 0
ELSE 1
END AS 走行距離表示
FROM tbl_car
<asp:Label ID="lblCar" runat="server" Text="★" Visible='<%# Eval("走行距離表示") %>' />
要するに走行距離が0だったりNullだったりしたら★マークを出す、というだけのもので、
おそらく型がbit型になってないのだろうと思います。
CASE文のところの0を「False」や「'0'」や「'False'」にしてもダメ。
Evalのところを
<asp:Label ID="lblCar" runat="server" Text="★" Visible='<%# (bool)Eval("走行距離表示") %>' />
としてみてもダメでした。
どうすれば思うような表示ができるでしょうか?
ご指摘よろしくお願いいたします。