Goal: I have a thumbnail as a byte array in memory. Once a user uploads their image, I want to display it in an httphandler before writing it to the database. I have used this code to successfully read it and display from a database. But now I want to display it from the session:
Public Sub ProcessRequest(ByVal context As HttpContext) _
Implements IHttpHandler.ProcessRequest
Dim oPhotoMgt As New PhotoMgt
Dim intPhotoID As Int32 = context.Request.QueryString("id")
Dim oPhoto As New Photo
oPhoto = oPhotoMgt.GetPhotoByID(intPhotoID)
context.Response.ContentType = "image/jpeg"
context.Response.BinaryWrite(oPhoto.Bytes.ToArray())
End Sub
You should mark your class with the IRequiresSessionState interface ( System.Web.SessionState
namespace). It has no methods or properties, so you shouldn't have to change anything else about your code.
The signature would be:
Imports System.Web
Imports System.Web.SessionState
Public Class MyHandler
Implements IHttpHandler, IRequiresSessionState
Public Sub ProcessRequest(ByVal context As HttpContext) _
Implements IHttpHandler.ProcessRequest
context.Session("foo") = "bar"
End Sub
End Class
Thorarin was correct. I had to implement IRequiresSessionState. What I didn't realize was that I then had to refer to the variable as
context.Session("oUser")
instead of
Session("oUser")
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.