Jag har problem med att kolla om en bild finns eller inte. Metoden Exists använder en fysisk sökväg, inte en URL. URL:n var bara ett exempel. > URL:n var bara ett exempel. Då får jag väl fundera på hur jag ska göra, ingen större idé att visa kod heller då...File.Exists returnerar false (bild)
File.Exists fungerar inte med url, det blir false hela tiden.
Ex (ej fungerande?):
string strBild = "http://bilder/bild.jpg";
System.Web.UI.WebControls.Image imgPhoto = new System.Web.UI.WebControls.Image();
imgPhoto.ImageUrl = strBild; //Funkar - bild visas
File.Exists(strBild); //Returnerar falseSv: File.Exists returnerar false (bild)
URL:en som du använder är dessutom felaktig. Egentligen borde den leta efter bilden på domänen "bilder", vilken naturligtvis inte finns. Ifall det fungerar så beror det på att egenskapen ImageUrl rensar bort "http://" ifrån adressen för att göra en logisk sökväg av den, och använder den korrekta sökvägen "bilder/bild.jpg".
För att göra om den logiska sökvägen till en fysisk så får du använda Server.MapPath:string strBild = "bilder/bild.jpg";
if (File.Exists(Server.MapPath(strBild)) {
...
}
Sv:File.Exists returnerar false (bild)
Jag har ingen logisk sökväg - bara URL, så MapPath funkar inte heller så bra.Sv: File.Exists returnerar false (bild)
Kan du visa den kod som du verkligen använder, då, eller åtminstone ett exempel som motsvarar det som du använder?
> Jag har ingen logisk sökväg - bara URL, så MapPath funkar inte heller så bra.
Ja, då kan du ju inte komma åt filen via filsystemet över huvud taget. Du får skicka en request till servern, men det är ju inte så effektivt. Det innebär ju att varenda bild kommer att hämtas två gånger för att visas en gång.Sv:File.Exists returnerar false (bild)
Tack för hjälpen!