17. november 2008 - 10:30Der er
13 kommentarer og 2 løsninger
En lille sød If sætning
Jeg har et lille broblem med min if sætning. jeg vil sige til den: hvis der er et billede så udskriv det, ellers lad være, så der ikke kommer det der klamme kryds skal den køre en anden sætning. jeg har prøvet noget ala det her:
If Not Row.Item("fldBillede") Is Nothing Then lblMenu.Text &= "<td><img src='" & Row.Item("fldBillede") & "'></td></tr>" Else lblMenu.Text &= "<td></td></tr>" End If
Jeg tror du skal bruge en Literal control i stedet for en label.
Hvis det ikke er dette som er problemet, kan du da ikke skrive lidt mere om, hvorfor det ikke virke, f.eks. kan du skrive hvilken fejlmeddelelse du får?
Ok, så tror jeg din fejl ligger i, at billedet aldrig er NULL. prøv med:
If Not String.IsNullOrEmpty(CStr(Row.Item("fldBillede"))) Then lblMenu.Text &= "<td><img src='" & Row.Item("fldBillede") & "'></td></tr>" Else lblMenu.Text &= "<td></td></tr>" End If
Hvis dette ikke virker, da prøv at sætte et breakpoint i koden, for at se om den nogensinde kommer ind i "Else" delen af If-sætningen.
Doh, det er jo selvfølgelig fordi null i databasen ikke bliver nothing i Asp.net, men DBNull. Prøv:
If Not Row.Item("fldBillede") = DBNull.Value Then lblMenu.Text &= "<td><img src='" & Row.Item("fldBillede") & "'></td></tr>" Else lblMenu.Text &= "<td></td></tr>" End If
Hmm, Jeg er vandt til C#, der kan man sagtens gøre sådan. Åbenbart en begrænsning i VB.net.
Prøv: If Not Row.Item("fldBillede") = CType(DBNull.Value, object) Then lblMenu.Text &= "<td><img src='" & Row.Item("fldBillede") & "'></td></tr>" Else lblMenu.Text &= "<td></td></tr>" End If
Hvis det ikke virker:
If Not Row.Item("fldBillede").GetType() = DBNull.Value.GetType() Then lblMenu.Text &= "<td><img src='" & Row.Item("fldBillede") & "'></td></tr>" Else lblMenu.Text &= "<td></td></tr>" End If
If Not Row.Item("fldBillede") Is DBNull.Value Then lblMenu.Text &= "<td><img src='" & Row.Item("fldBillede") & "'></td></tr>" Else lblMenu.Text &= "<td></td></tr>" End If
Supert at du fik det til at virke. Som sagt er jeg ikke så godt kendt i VB.net, men jeg synes sgu at det er lidt mærkeligt at du skal bruge "Is" i stedet for "=".
Men men, syntaksen er jo forskellig!
Jeg lægger et svar som du kan give lidt point, hvis du føler noget af det jeg skrev hjalp dig.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.