51 lines
1.9 KiB
VB.net
51 lines
1.9 KiB
VB.net
Imports Nuvolar.Module
|
|
Imports DevExpress.Persistent.BaseImpl
|
|
Imports DevExpress.Data.Filtering
|
|
Imports System.IO
|
|
Imports DevExpress.Web.Internal
|
|
|
|
Public Class GetAttachments
|
|
Implements System.Web.IHttpHandler
|
|
Private _Session As DevExpress.Xpo.Session
|
|
Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest
|
|
Dim _Oid As String
|
|
Dim _ConnectionString As String
|
|
Dim _Attachment As FileData
|
|
Dim _MemoryStream64 As String
|
|
_Oid = context.Request.QueryString("id")
|
|
_MemoryStream64 = context.Request.QueryString("ms")
|
|
If _Oid <> "" Then
|
|
_ConnectionString = ConfigurationManager.ConnectionStrings("ConnectionString").ToString
|
|
|
|
_Session = New DevExpress.Xpo.Session
|
|
_Session.ConnectionString = _ConnectionString
|
|
_Session.AutoCreateOption = AutoCreateOption.SchemaAlreadyExists
|
|
_Session.Connect()
|
|
|
|
If _Session.IsConnected Then
|
|
_Attachment = _Session.FindObject(Of FileData)(CriteriaOperator.Parse("Oid=?", _Oid))
|
|
|
|
If _Attachment IsNot Nothing Then
|
|
Dim _Stream As New MemoryStream
|
|
_Attachment.SaveToStream(_Stream)
|
|
HttpUtils.WriteFileToResponse(Nothing, _Stream, _Attachment.FileName, True, "")
|
|
End If
|
|
End If
|
|
End If
|
|
If _MemoryStream64 = "1" Then
|
|
If GLOBAL_Download_MemoryStream IsNot Nothing Then
|
|
GLOBAL_Download_MemoryStream.Position = 0
|
|
HttpUtils.WriteFileToResponse(Nothing, GLOBAL_Download_MemoryStream, GLOBAL_Download_FileName, True, GLOBAL_Download_FileExtension)
|
|
End If
|
|
End If
|
|
|
|
End Sub
|
|
|
|
|
|
ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable
|
|
Get
|
|
Return False
|
|
End Get
|
|
End Property
|
|
|
|
End Class |