图片标记不显示图片,而图片url很好。 MVC

问题描述:

我是新来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

*我的图像标签是很好..这仅仅是打字错误。 –

你应该相对图像路径保存到你的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); ????? –