Pregunta

Quiero mostrar una imagen si se cumplen 2 condiciones.

  1. El elemento de datos no es nulo
  2. El valor del elemento de datos es mayor que 0

marcado

<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" />

Mensaje de error

operador '=' no está definida para el tipo 'DBNull' y tipo 'Integer'. Descripción: Una excepción no controlada durante la ejecución de la solicitud Web actual. Revise el seguimiento de la pila para obtener más información acerca del error y dónde se originó en el código.

Detalles de excepciones: System.InvalidCastException: Operador '=' no está definida para el tipo 'DBNull' y tipo 'Integer'

.
¿Fue útil?

Solución

Trate de usar OrElse. En VB.Net el operador condicional Or hace que ambos lados para evaluar independientemente del éxito. Así que si usted tiene un nulo que va a intentar la comparación de todos modos. Usando OrElse hará que la segunda condición no para ser evaluado si el primero es cierto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top