c# - 如何使用 ASP.NET MVC 5 在 View 中显示图像? (目前很多建议都失败了)

标签 c# asp.net-mvc image base64 display

我将图像文件存储在 App_Data/img 文件夹中,并将每个图像文件的名称存储在数据库表中。我通过 Entity Framework 访问数据库。我最初的想法是从数据库获取图像文件的名称,创建图像路径字符串,然后将该字符串分配给元素的“src”属性。但它就是不起作用。没有显示任何内容。我已经考虑过各种建议,但没有一个对我有用。以下是最完善的,但也不起作用

<img src="~/App_Data/img/@Url.Content(Model.ImagePath)" height=100 width=200 />

在这里,波浪号似乎不起作用。因为在页面源代码中,我的路径呈现为书面形式,而不是我的应用程序根文件夹的相对路径。

1)如何解决该路径问题?为什么波形符不能帮助我指向我的根文件夹?

2)这是实现此类任务的好方法吗?据我搜索,很多人都在处理 base64 字符串的内容。使用静态/预定义的文件路径,base64 转换也对我有用。但是当我动态更改要显示的文件时,我无法处理 Base64 的内容。因此,我放弃了使用它。但是,我不确定这是否是一个好主意?

最佳答案

  1. URL.Content(path) 用于按照 MVC @Url.Content vs @Url.Action 解析波浪号表达式。 。

  2. 这不是一个好方法。 App_Data 文件无法由 ASP.NET 提供服务:https://stackoverflow.com/a/528872/4378740

假设 Model.ImagePath 类似于“cute_dog.png”,更好的方法是在根目录中创建一个 images 文件夹。然后你可以使用类似的东西:

<img src="/images/@(Model.ImagePath)" height=100 width=200 />

关于c# - 如何使用 ASP.NET MVC 5 在 View 中显示图像? (目前很多建议都失败了),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47779204/

相关文章:

c# - 有关通过 Windows Installer 安装应用程序的问题

c# - 数据访问层

c# - .Net Core 无法从 appsettings.json 读取连接字符串

php - 在 Android 中使用 JSON 列表数组

c# - 从 List<string> 中选择带有排除项和非重复选择的随机字符串

.net - 如何通过 @Html.EditorFor 将 ViewData 的值传递给编辑器模板

c# - 将 ASP.NET MVC Razor @helper 函数转换为帮助类的方法

html - 边框图像不显示

python - python中Kmeans聚类对RGB图像进行图像分割

c# - 如何通过套接字发送多条消息