数据绑定表达式中的条件语句
如果满足两个条件,我想显示图像。
- 数据项不为空
- 数据项的值大于 0
标记
<img id="Img1" runat="server" visible='<%#IIF( DataBinder.Eval(Container.DataItem,
"amount") is DBNull.Value Or DataBinder.Eval(Container.DataItem,
"amount") = 0, False, True)%>' src="/Images/check.png" />
错误消息
未为类型“DBNull”和类型“Integer”定义运算符“=”。 描述:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其在代码中的来源的更多信息。
异常详细信息:System.InvalidCastException:未为类型“DBNull”和类型“Integer”定义运算符“=”。
I want to display an image if 2 conditions are met.
- The data item is not null
- The value of the data item is greater than 0
Markup
<img id="Img1" runat="server" visible='<%#IIF( DataBinder.Eval(Container.DataItem,
"amount") is DBNull.Value Or DataBinder.Eval(Container.DataItem,
"amount") = 0, False, True)%>' src="/Images/check.png" />
Error message
Operator '=' is not defined for type 'DBNull' and type 'Integer'.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.InvalidCastException: Operator '=' is not defined for type 'DBNull' and type 'Integer'.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
尝试使用
OrElse
。在 VB.Net 中,Or
条件运算符会导致双方进行计算,无论成功与否。因此,如果你有一个空值,它无论如何都会尝试进行比较。如果第一个条件为 true,则使用 OrElse 将导致不计算第二个条件。Try using
OrElse
. In VB.Net theOr
conditional operator causes both sides to evaluate regardless of the success. So if you have a null it's going to attempt the comparison anyway. UsingOrElse
will cause the second condition not to be evaluated if the first is true.