Bild-URL ist richtig, aber Bild nicht zeigt
-
10-10-2019 - |
Frage
ich eine Website auf GoDaddy haben. Alle Berechtigungen korrekt eingestellt sind und das Bild ist nicht vorhanden. Allerdings, wenn die Seite geladen wird das Bild für das Element ausgewählt zeigt nicht. Hier ist mein Code
imagepath = "~/spaimages/" + currentSpaModel.Name.ToString() + ".png";
if (File.Exists(Server.MapPath(imagepath)))
{ this.spaimage.ImageUrl = Server.MapPath(imagepath); }
spaimage ist eine ASP-Steuerung und thr URL, dass das Bild gesetzt wird, wird D: \ Hosting \ xxxxxxx \ calspas \ spaimages \ modelname.png
Was mache ich falsch.
Lösung
Der Dateipfad D:\hosting\xxxxxxx\calspas\spaimages\modelname.png
ist der Ordner, in dem das Bild auf dem Web-Server befindet. Sie senden diese als die <img>
Attribut des src
-Tag, das den Browser anweist, „Go das Bild in D:\hosting\xxxxxxx\calspas\spaimages\modelname.png
bekommen.“ Der Browser kann nicht auf dem Laufwerk D des Webservers gehen, so dass es auf seiner eigenen D-Laufwerk für diesen Ordner und Bild aussieht.
Was Sie bedeuten, zu tun ist, den <img>
-Tags src
Attribut zu haben, ein Pfad zu einem Ordner auf der Website . Sie sind dabei, da nur - nur den Server.MapPath
Teil fallen, wenn das Bild Pfad zur ImageUrl
Eigenschaft zuweisen. Das heißt, statt:
this.spaimage.ImageUrl = Server.MapPath(imagepath);
Sie:
this.spaimage.ImageUrl = imagepath;
sehen, ob das funktioniert.
Danke
Andere Tipps
Oft, wenn ein Bild „nicht“ (ich nehme an einem rot-x-äquivalent angezeigt wird „gebrochen Bild“ zeigen), I Rechtsklick auf das gebrochene Bild, kopieren Sie die URL und öffnen Sie die URL in einem separate Browser-Fenster.
Auf diese Weise, wenn das Bild durch einen Skript erzeugt wird, sehe ich jeden Text Fehler, dass das Skript gezeigt haben könnte. Wenn nicht, würde das reale Bild angezeigt werden.
Darüber hinaus fügen Sie einen else
Block zum
if (File.Exists(Server.MapPath(imagepath)))
wie
else
{
Response.Write(string.Format(
"File does not exist at '{0}'.",
Server.MapPath(imagepath)));
}
Für Debugging-Zwecke.