Estoy trabajando con un DataList
y dentro de su ItemTemplate
tengo lo siguiente:
- <asp:Image ID="Image1" runat="server" ImageUrl='<%# Funciones.DameURLImagen(Eval("Imagen")) %>' />
La función DameURLImagen
debe revisar el parámetro que se le manda. Si es de tipo DBNull
quiere decir que ese campo es nulo en la base de datos, así que debe mostrar una imagen genérica. Si es un String
, entonces debe verificar si está vacío o no. Si lo está, se debe mostrar nuevamente la imagen genérica. Si no lo está se debe mostrar la imagen extraída de la base de datos.
Este chequeo de tipo se hace mediante TypeOf
.
Aquí está nuestra función DameURLImagen
:
- Shared Function DameURLImagen(ByVal Imagen As Object) As String
- If IsDBNull(Imagen) Then
- DameURLImagen = "~/Images/NoHayImagen.jpg"
- Else
- If TypeOf (Imagen) Is String Then
- If Imagen = "" Then
- DameURLImagen = "~/Images/NoHayImagen.jpg"
- Else
- DameURLImagen = "~/Images/" & Imagen
- End If
- Else
- DameURLImagen = "~/Images/NoHayImagen.jpg"
- End If
- End If
- End Function