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

ASP.NET
如何用Response.Redirect方法传递汉字
在ASP.NET中调用存储过程方法新解
决定何时使用 DataGrid、DataList 或 Repeater(ASP.NET 技术文章)
AlternatingItemTemplate类似于 ItemTemplate 元素
c#中过滤html的正则表达式
ASP.NET:ADO.NET的DataAdapter对象
repeater分页 内容显示
内容添加asp.net
VS2003 SP1发布
DataReader深入解析:持续更新
C#.Net 学习笔记(一)
从ASP过渡到ASP.net遗留的二十大积习
如何改变asp.net项目名称
asp,asp.net学习教程下载
基于.net开发的遵循web标准的个人站点程序包下载
FileUpload1 上传文件类型验证正则表达式
ASP.NET与数据库相关技巧
读取TXT文件内容的方法
简单的启动窗体
c#中实现文件拖放打开的方法

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


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