当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 保存图片流到数据库之后固定显示新法

ASP.NET
asp.net 动态生成表格
asp.net 程序优化精选
DataGridView自动调整行高和行宽
asp.net+js实现的ajax sugguest搜索提示效果
asp.net 将设有过期策略的项添加到缓存中
asp.net SqlDataAdapter对象使用札记
DataGrid 动态添加模板列 实现代码
asp.net 设置GridView的选中行
the sourcesafe database has been locked by the administrator之解决方法
asp.net 退出登陆(解决退出后点击浏览器后退问题仍然可回到页面问题)
Asp.Net HttpHandler 妙用
ASP.NET 保留文件夹详解
asp.net 中将表单提交到另一页 Code-Behind(代码和html在不同的页面)
SqlDataSource 链接Access 数据
asp.net GridView的删除对话框的两种方法
asp.net 按字节检查包含全半角的文字
asp.net String.IsNullOrEmpty 方法
asp.net System.Net.Mail 发送邮件
c# 读取文件内容存放到int数组 array.txt
asp.net Split分割字符串的方法

ASP.NET 中的 保存图片流到数据库之后固定显示新法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-23   浏览: 215 ::
收藏到网摘: n/a

在sqlserver中的图片类型是image,然后,通过dataset保存到数据库中,通过showimg.aspx文件来读出图片,即显示图片,代码如下:


DimimageAsByte()=IssueQuestionRow.QuestionImage
'/转换为支持存储区为内存的流
DimmemStreamAsNewSystem.IO.MemoryStream(image)
'/定义并实例化Bitmap对象
DimbmAsNewBitmap(memStream)
'/根据不同的条件进行输出或者下载;
Response.Clear()
'/如果请求字符串指定下载,就下载该文件;
'/否则,就显示在浏览器中。
IfRequest.QueryString("Download")="1"Then
Response.Buffer=True
Response.ContentType="application/octet-stream"
'/这里下载输出的文件名字ok.jpg为例子,你实际中可以根据情况动态决定。
Response.AddHeader("Content-Disposition","attachment;filename=ok.jpg")
Else

Response.ContentType="image/jpg"
EndIf
Response.BinaryWrite(image)

Response.End()


然后通过需要调用显示图片的页面,加入


<img src=”./showimg.aspx”wigth=”100px”height=”50”>

来固定图片的显示位置、大小等。当然也可以通过一个页面的不同参数来获得不同的图片,如下代码:


Showimg.aspx文件:
PublicQuestionIDAsString
PublicChapterIDAsString
PrivateSubPage_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load
'在此处放置初始化页的用户代码
IfNotIsPostBackThen
QuestionID=Request.QueryString("QID")
ChapterID=Request.QueryString("ChapterID")
Exercise=EXH.GetExercise(ChapterID)
DimdvAsNewDataView(Exercise.Ex_IssueQuestion)
dv.RowFilter="QuestionID='"+QuestionID+"'"
Ifdv.Count>0Then
IssueQuestionRow=dv.Item(0).Row
DimimageAsByte()=IssueQuestionRow.QuestionImage
'/转换为支持存储区为内存的流
DimmemStreamAsNewSystem.IO.MemoryStream(image)
'/定义并实例化Bitmap对象
DimbmAsNewBitmap(memStream)
'/根据不同的条件进行输出或者下载;

Response.BinaryWrite(image)
EndIf
EndIf
EndSub

在其他需要调用的地方的aspx页面里只需写:


<img src=”./showimg.aspx?QuestionID=222&ChapterID=3”wigth=”100px”height=”50”>