如何从ASP.Net和C#中的数据库中获取和显示图像

有很多关于使用FileUpload控制器在数据库中的表中插入图像的好教程.

然而,我找不到关于如何获取这些图像并显示它们的好教程.

当我以前在数据库中存储图像名称或路径(作为Varchar)时,做这样的事情会很简单……

HTML / ASP:

<img src="" runat="server" id="myImage" />

C#:

myImage.Src = myReader.getValue(0).toString();

结果:

<img src="/Images/pic.png" runat="server" id="myImage" />

而Voila,将显示图片.

但是现在我想获取上传的图像,而不是路径,意味着表格列的类型是IMAGE.

一些教程最终将导致在FULL SCREEN中显示图片.

我不希望这样,我只是想以上一个例子中显示的方式获取和显示图像,在我的网页中有给定的大小和位置.

为什么我要将图像上传到数据库?因为这些图片是“个人资料图片”,而不是公共图片,我不希望访客只是浏览/ Images /查找我的网站,公共和私人的所有图片.

最佳答案 首先,为了做你想做的事情,我只是将文件复制到一个临时位置,并将该位置用于“src”属性.稍后,您可以删除该文件.更复杂的方法是创建一个aspx页面,将图像作为二进制流写入网页.此页面将从数据库中获取图像,并在响应中写出流.然后,您将在图像的src属性中使用此aspx页面.但是,将图像路径存储在数据库中并将实际文件存储在文件系统上并不意味着该文件夹必须是可浏览的或公共的.例如,您可以关闭目录浏览.

点赞