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

ASP.NET
asp.net ajax功能强大的UpdatePanel控件
mscorwks.dll在.Net中的地位及代码保护应用
使用.NET实现你的IP切换器
在ADO.NET中用参数化查询缩短开发时间
Login控件:用户登录失败的消息提示
如何用C#来部署数据库
.net打包自动安装数据库
数据库开发个人总结(ADO.NET小结)
ASP.NET如何进行性能优化问题(2)
ASP.NET如何进行性能优化问题(1)
用.Net实现基于CSS的AJAX开发(6)
用.Net实现基于CSS的AJAX开发(5)
用.Net实现基于CSS的AJAX开发(4)
用.Net实现基于CSS的AJAX开发(3)
用.Net实现基于CSS的AJAX开发(2)
用.Net实现基于CSS的AJAX开发(1)
C#下用P2P技术实现点对点聊天
ASP.NET服务器端异步Web方法
在asp.net中如何从视频文件中抓取一桢并生成图像文件
.NET中多线程的同步资源访问

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-23   浏览: 86 ::
收藏到网摘: 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”>