2017-02-25 138 views
0

我是新來asp.net MVC。我有以下數據庫中的圖片來源:圖片標記不顯示圖片,而圖片url很好。 MVC

@Model.Image2Url = "C:\Users\vasamad\Documents\VisualStudio2015\Projects\ReactMVC\ReactMVC\Content\Images\Products\3.jpg" 

我添加它來查看這樣的

<img src="@Model.Image2Url" alt="No Image"/> 

在瀏覽器中檢查元素,當我複製此網址「無法加載圖片」 並在新標籤中顯示其圖像。

+0

*我的圖像標籤是很好..這僅僅是打字錯誤。 –

回答

1

你應該相對圖像路徑保存到你的MVC應用程序根目錄:

~/Content/Images/Products/3.jpg 

如果你想完整的圖像路徑,那麼你將需要寫一個控制器的行動,將從絕對路徑和流中讀取此圖片它的迴應。最後<img>標籤需要指向這個新的控制器動作。這裏有一個例子:

public ActionResult MyImage() 
{ 
    // Get this from your database 
    string absoluteImagePath = "C:\\Users\\vasamad\\Documents\\VisualStudio2015\\Projects\\ReactMVC\\ReactMVC\\Content\\Images\\Products\\3.jpg"; 
    return File(absoluteImagePath, "image/jpeg"); 
} 

,然後在你的觀點的圖像標記這個動作:

<img src="@Url.Action("MyImage", "MyController")" alt="" /> 
+0

如何保存相對圖像路徑? var ImagePath = Path.Combine(Server.MapPath(「〜/ Content/Images/Products /」)+ img.FileName); ????? –