asp.net从数据库中读取图像并输出

时间:2011-03-28 14:57:32

标签: c# asp.net image-processing

我将图像存储在我的数据库表中,并希望从数据库中读取并在我的asp.net页面中输出这些图像。有没有人对此有任何建议或提示?

由于

3 个答案:

答案 0 :(得分:2)

您应该创建一个ashx处理程序。然后在页面输出中插入一些标记<img src="yourhandler.ashx?id=yourid" ..>在处理程序类中,您从数据库中读取图像并使用Response.Write向下流式传输到客户端。请记住正确设置内容类型。 这是一个例子:http://www.developerfusion.com/code/5223/using-ashx-files-to-retrieve-db-images/。一旦你有第一个版本工作,你可能需要通过添加一些缓存处理来改进它,但让我们开始创建句柄:)

答案 1 :(得分:1)

关注此Article。它将向您展示如何从数据库保存和检索图像的分步指南。

答案 2 :(得分:1)

你可以这样做:

创建单独的页面,该页面将从Db中检索图像,并将图像src设置为新页面url。传递一个查询字符串,其中包含照片的ID或您可以从数据库中获取的一些方法。

在新页面上有一些代码如下:

     if (Request.QueryString["imageId"] != null)
                {
                    int imgId= int.Parse(Request.QueryString["imageId"]);

byte[] photoBytes= //get photo bytes from the DB here...


                    if (photoBytes != null)
                    {
                        if (photoBytes.Length > 0)
                        {
                            byte[] bImage;
                            bImage = photoBytes;

//write the bytes to the response.. the page that has referenced this page as the img src will sow the image  
                            Response.BinaryWrite(bImage);

                        }
                    }
                }