我正在将图片的物理路径存储在表格中,我试图在视图中显示图像。
我正在获取它并将其存储在Model中并将其存储在字符串属性中,然后再将其发送到强类型视图。
我正在尝试使用以下代码显示图像:
<img src="@Url.Content(@Model.imageUrl)" alt="Image"/>
如果我查看页面的来源,路径正确加载,如下所示,但图像未显示。
<img src="C:\Documents and Settings\dinesh.sekaran\Desktop\My
Files\OnlineShoppingSystemMVC\OnlineShoppingSystemMVC\Resources\iphone5s.jpg"
alt="Image"/>
感谢您的帮助。
答案 0 :(得分:2)
您不应直接将服务器的物理路径暴露给浏览器,而这正是您正在做的事情。
您需要将物理路径转换为虚拟路径。
如果存储文件的文件夹的路径位于您的站点内,则可以使用虚拟路径替换部分物理路径,例如shown here。
如果没有,您始终可以链接到返回包含图像的FileResult
的操作。为此,您需要在控制器中创建一个动作,该动作接收标识图像的标识符或路径或其他内容,并以FileResult
形式返回图像文件。
答案 1 :(得分:0)
尝试使用相对路径,并将图像放入应用程序的images文件夹中。 如果@ Model.imageUrl是一个字符串就足够了。
答案 2 :(得分:0)
此路径无法使用,因为这是一个安全问题,您必须使用源地址的项目文件夹相对路径,如:
<img src="/Resources/iphone5s.jpg" alt="Image"/>
这将解决您的问题。