2

我正在尝试在我的 Asp.Net MVC 1.0 应用程序中显示图像。

byte[]我可以成功地从数据库中获取图像(进入)。

如何将其显示到<img>?

4

3 回答 3

5

FileResult从操作方法返回一个:

return File(imageData, "image/png"); 

请注意,输出页面和图像的 HTML 应在两个单独的请求中完成。src您必须为返回图像的操作生成属性的 URL,并且在该操作中,您可以输出图像内容。

于 2009-07-12T06:28:03.940 回答
2

这有效(经过测试):

<img src="<%= Url.Action("ShowImage", "Image", new { Id = imageId }) %>" />
于 2009-07-12T10:32:33.153 回答
-4

SQL 不是存储图像的好地方

微软说,他们完全有理由支持 SQL。它在您的开发机器上速度很快,但无法扩展。

最好将图像路径存储在 SQL 中,并将图像文件本身存储在文件系统中。

如果您的数据库中已经有图像并且无法迁移,则磁盘缓存可以消除开销。

免责声明:我是这个软件的作者

免费的ImageResizing.Net 库有一个(AGPL/商业)SqlReader 插件,它支持任何数据库模式,并且可以尽可能高效地从 SQL 中提供图像。添加磁盘缓存插件,您将以最少的开发工作恢复文件系统级别的性能和可伸缩性。

于 2011-10-15T22:31:14.223 回答