我觉得原理都差不多,你可以参考这个
http://www.cndot.net/article/show.asp?id=776
http://www.cndot.net/article/show.asp?id=776
解决方案 »
- 求助。htm+ashx+linq+ajax要求用这些做个留言板
- 送分题,大家快来围观。。急啊!
- 请教MVC的URL问题。
- 关于aspx页面读取C#拼装json问题,高手请进!
- 关于UpdatePanel局部刷新的问题
- 在另外一台sql server服务器上附加数据库后,程序运行出现错误!!什么原因???详情
- 请大家讨论一下ASPX页面方法的封装问题
- 客户端怎么把一个文件直接存入服务器的BLOB字端里。(不能先上传临时目录再存)急
- 请问这是什么问题?
- 又搞不明白了!asp.net真是让我又爱又狠。
- 为什么不能用中文名ASP文件,求解决方法?
- 如何在DATAGRID中单击一行改变其颜色及如何得到单击行的值?
我的源代码如下:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
Response.Expires = 0
Response.Buffer = True
Response.Clear() Dim strConnection As String = "Provider=MSDAORA.1;Password=ztcx;User ID=ztcx;Data Source=ztcx"
Dim strSQL As String
Dim strResultsHolder As String
strSQL = "SELECT photo_jpg from photo_t where photo_no='99901008953'"
Dim objConnection As New OleDbConnection(strConnection)
Dim objCOmmand As New OleDbCommand(strSQL, objConnection)
Dim objDataReader As OleDbDataReader
objConnection.Open()
objDataReader = objCOmmand.ExecuteReader() If objDataReader.Read() = True Then
test = objDataReader("photo_jpg")
'Response.BinaryWrite(objDataReader("photo_jpg"))
End If Response.End()但总是在“objDataReader = objCOmmand.ExecuteReader()”出错,错误如下:不支持此接口发生了一个 Oracle 错误,但无法从 Oracle 中检索错误信息。数据类型不被支持。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.OleDb.OleDbException: 不支持此接口发生了一个 Oracle 错误,但无法从 Oracle 中检索错误信息。数据类型不被支持。
参看代码如下
Byte[] OriPicData=(Byte[])this.MyCommand.ExecuteScalar();
Stream fs=new MemoryStream() ;
fs.Write(OriPicData,0,OriPicData.Length);
System.Drawing.Image MyImage=System.Drawing.Image.FromStream(fs);
System.Drawing.Bitmap MyBitMap=new System.Drawing.Bitmap(MyImage,MyImage.Size);
MyBitMap.Save(Response.OutputStream,System.Drawing.Imaging.ImageFormat.Jpeg);
Dim OriPicData as Byte[]
Dim fs=new MemoryStream()
OriPicData=this.MyCommand.ExecuteScalar();
Dim MyImage=System.Drawing.Image.FromStream(fs);
Dim MyBitMap=new System.Drawing.Bitmap(MyImage,MyImage.Size);
MyBitMap.Save(
Response.OutputStream,System.Drawing.Imaging.ImageFormat.Jpeg);
应改为
Dim myobject as Object
myobject=objCommand.ExecuteScalar() (返回一个图片的object)
然后你再针对这个object做处理,转成byte[]类型,然后输出。
虽然我的第一次的代码是c#.net的,可是原理是一样的。。
你再仔细看看吧,一定会有帮助的
应改为
Dim myobject as Object
myobject=objCommand.ExecuteScalar() (返回一个图片的object)
然后你再针对这个object做处理,转成byte[]类型,然后输出。
虽然我的第一次的代码是c#.net的,可是原理是一样的。。
你再仔细看看吧,一定会有帮助的
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.OleDb.OleDbException: 不支持此接口发生了一个 Oracle 错误,但无法从 Oracle 中检索错误信息。数据类型不被支持。源错误:
行 45: 'Dim OriPicData As Byte = objCOmmand.ExecuteScalar().ToByte
行 46: 'objDataReader = objCOmmand.ExecuteReader(CommandBehavior.SequentialAccess)
行 47: myobject = objCOmmand.ExecuteScalar()
行 48:
行 49:
谢谢!