2013-06-23 86 views
0

我将用户照片存储在一个文件夹中,并将它们的URL存储在我的SQL数据库中。这些URL被存储,我也能够检索它们,但是当我将这个URL链接到asp:Image控件的ImageURL属性时,图像没有被检索到。相反,我在我的网站上看到一个空框。请帮忙!使用存储在数据库中的URL检索图像

+0

您是否尝试将URL粘贴到浏览器中? –

回答

1

您在数据库中存储的URL是本地文件系统URL,它类似于d:\picture_files\first_picture.jpg。当您将其发送到浏览器时,浏览器会尝试在用户的计算机上查看,而不是您的服务器 - 因为它作为本地URL到达。

您需要做的是创建一个返回图像的网页,例如'/ show_image?imageid = 123`。服务器将看到请求,在数据库中查找图像ID 123,然后将图像发送到浏览器。这样您的用户将能够看到图像。

+0

同意你的回答,我要回答一个类似的问题:) – simsim

0

您可以通过使用现场的streem 和变化的数据类型的SQL数据库图像 将图像转换为字节数字节[]' 的阵列和存储在数据库 数组,当你需要事先知情同意,获得数组从数据库的字节,并转换为图像再次

///代码图像转换为字节“使用system.IO”

byte[] myFile; 
    using (Stream inStream = File.Open("path of image", FileMode.Open)) 
    { 
      myFile = new byte[inStream.Length]; 
      for (int i = 0; i < inStream.Length; i++) 
      { 
       myFile[i]=((byte)inStream.ReadByte()); 
      }   
    } 

///代码的字节转换成图像

 Stream stream = new MemoryStream(myFile); 
    Image myImage = Image.FromStream(stream); 
相关问题