将图片保存在数据库中,以下是方法:
HttpPostedFile upFile = fileUpload.PostedFile;
//获取上传图片的大小,以字节为单位
int iFileLength = upFile.ContentLength;
Byte[] FileByteArray = new Byte[iFileLength];
//获取一个System.IO.Stream对象,该对象指向一个上载文件,以准备读取该文件的内容
Stream StreamObject = upFile.InputStream;
//从当前流读取字节序列
StreamObject.Read(FileByteArray, 0, iFileLength);
................................................................................................................................
//使用base 64数字编码,将图片存入数据库
autographModel.ImageContet = Convert.ToBase64String(FileByteArray);
...............................................................................................................................
将图片从数据库中读取出来:
//清除缓冲区流中所有内容的输出
Response.Clear();
//设置输出流中的HTTP MIME类型是“image/jpeg"
Response.ContentType = "image/jpeg";
//指示当前流为缓冲输出
byte[] b = Convert.FromBase64String(autographModel.ImageContet);
//将二进制字符的字符串写入 HTTP 输出流
this.Response.BinaryWrite(b);
将当前缓冲的所有输出发送至客户端,停止执行请求的进程
Response.End();