У меня проблемы с отправкой PDF-документа моей страницей Ashx.
Вот что у меня есть для моего кода ответа.
Обновление: добавлен целый ясень, чтобы ответить на некоторые ответы.
`
<%@ WebHandler Language="VB" Class="deliverpdf" %>
Imports System
Imports System.Web
Imports System.Configuration
Imports System.IO
Imports System.Web.UI.WebControls
Imports System.Web.HttpContext
Imports Aspose.Words
Imports Aspose.Words.Reporting
Imports Aspose.Words.Saving
Public Class deliverpdf : Implements IHttpHandler, IRequiresSessionState
Public Sub ProcessPDF(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest
context.Response.ContentType = "application/pdf"
context.Session("errormessage") = ""
Try
Dim dataDir As String = ConfigurationManager.AppSettings("ApplicationRoot") & "app_data/Contracts/Customers/"
Dim CustId As String = myCStr(context.Request.QueryString("cstid"))
Dim sid As Integer = myCInt(context.Request.QueryString("sid"))
Dim fileName As String = myCStr(context.Request.QueryString("name"))
dataDir = dataDir & CustId & "/" & sid & "/" & fileName
context.Response.Clear()
context.Response.ClearContent()
context.Response.ContentType = "application/pdf"
context.Response.AddHeader("Content-Disposition", "attachment; filename=" + fileName)
context.Response.AddHeader("Content-Length", dataDir.Length.ToString())
context.Response.TransmitFile(dataDir)
context.Response.End()
Catch ex As Exception
Dim dataDir As String = ConfigurationManager.AppSettings("ApplicationRoot") & "app_data/Contracts/Customers/"
Dim CustId As String = myCStr(context.Request.QueryString("cstid"))
Dim sid As Integer = myCInt(context.Request.QueryString("sid"))
Dim fileName As String = myCStr(context.Request.QueryString("name"))
context.Response.Clear()
context.Session("errormessage") = ex.Message
End Try
context.Response.End()
End Sub
Public ReadOnly Property IsReusable() As Boolean Implements IHttpHandler.IsReusable
Get
Return False
End Get
End Property
End Class`
Эта страница отправляет файл, однако, как только я загружаю файл, все 3 основных браузера говорят, что его не удалось загрузить.
Есть предложения?