ASP.NET Core Razor页面无法通过ViewData显示图片问题
解决Razor页面通过ViewData传递图片路径无法显示的问题
核心问题
你当前的写法只是将路径字符串直接输出到页面,而非赋值给img标签的src属性,导致浏览器只显示文本而不加载图片。
正确实现方式
方式1:使用Url.Content解析路径
将Url.Content的结果作为img标签的src属性值:
<img src="@Url.Content(ViewData["Uploaded"].ToString())" alt="上传的图片" />
方式2:直接使用~开头的路径(ASP.NET Core适用)
ASP.NET Core的Razor页面会自动解析~根路径,因此也可以直接绑定:
<img src="@ViewData["Uploaded"]" alt="上传的图片" />
额外检查项
- 确认
wwwroot/images/DanceImages/bulltrout.jpg文件存在,路径大小写与代码一致(Linux/Mac环境区分大小写) - 确保项目已配置静态文件中间件(在
Program.cs中存在app.UseStaticFiles();代码) - 验证
ViewData["Uploaded"]的值无多余空格或特殊字符
内容的提问来源于stack exchange,提问作者JustJohn
相关产品推荐
相关产品推荐

