C#怎样读取数据库中的图片?(看清说明再回答!)

来源:百度知道 编辑:UC知道 时间:2024/06/23 21:24:43
注意:我的数据库是SQL2005图片储存格式image,B/S模式,用的是image控件显示图片,所以别跟我讲picturebox,B/S是没有picturebox的.
我现在已经将图片成功保存进数据库了(二进制数据),我想从数据库读取出来的时候,把图片先保存到本地,在本地建一个临时目录,然后再从这个临时目录把图片读取出来显示在image控件上面.求读取图片,保存到本地,显示的代码,保存的代码不用了.自己测试能用的就回答,网上的我基本都看过,不能用.请贴出完整的代码..

这个我做过,流程就是首先新建一个页面用于输出图像,将数据库中的二进制数据流读取到字节数组中,再定义基于字节数组的内存流,再定义图片对象,从内存流中生成图片,输出到一个新建页面上,在需要的页面上,定义image控件,imageurl就指向这个页面,当然了,得传一个参数,就是你要查询的条件啊,这样这个页面才会动态的输出不同的图片。
以下是读取图片的代码:
/// <summary>
/// 显示图片
/// </summary>
/// <param name="sql"></param>
protected void LoadImage(string sql)
{

DataOperate dt = new DataOperate();//操作类的实例
SqlConnection Conn = dt.GetConn();
Conn.Open();
SqlCommand cmd = new SqlCommand(sql, Conn);
byte[] fileData = (byte[])cmd.ExecuteScalar();
Conn.Close();

System.IO.MemoryStream ms = new System.IO.MemoryStream(fileData);
System.Drawing.Image img = System.Drawing.Image.FromStream(ms);
img.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
}

你从数据库里面读出来的图片是byte[]数组把?可以参考一下我的。我没验证对不对
byte[] b