0
Я пытаюсь загрузить pdf, который хранится в моей таблице db. Код работает отлично, если у меня нет ajax. В браузере, когда я проверяю, я получаю ошибку ниже.Загрузить Pdf с ImageButton по ошибке Radgrid с ajax
Sys.WebForms.PageRequestManagerParserErrorException:
The message received from the server could not be parsed.
Common causes for this error are when the response is modified by calls
to Response.Write(), response filters, HttpModules, or server trace is enabled.
Details: Error parsing near '%PDF-1.5
%�쏢
11 0 ob'.
При удалении ajax работает нормально!
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server" OnAjaxRequest="RadAjaxManager1_AjaxRequest" >
<AjaxSettings>
<telerik:AjaxSetting AjaxControlID="RadAjaxManager1">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="CustomerGrid" UpdatePanelCssClass="" />
<telerik:AjaxUpdatedControl ControlID="RadWindowManager1" UpdatePanelCssClass="" />
</UpdatedControls>
</telerik:AjaxSetting>
<telerik:AjaxSetting AjaxControlID="RadWindowManager1">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="CustomerGrid" UpdatePanelCssClass="" />
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</ClientEvents>
</telerik:RadAjaxManager>
ImageButton (на Radgrid)
<telerik:GridTemplateColumn UniqueName="Download" FilterControlAltText="Filter Delete column" AllowFiltering="false" >
<ItemTemplate>
<asp:ImageButton ID="ImageButtonDownload" runat="server" AlternateText="Download" CommandName="Download" Width="35px"
ImageUrl="~/assets/images/pdf.jpg" />
</ItemTemplate>
<HeaderStyle Width="13px" />
</telerik:GridTemplateColumn>
Мой код За
protected void downloadFile(string fileID)
{
{
byte[] file;
string Title = "";
try
{
string download = "Select agreementpdf,pdfname From companie WHERE code = @ID";
MySqlCommand cmd = new MySqlCommand(download, con);
con.Open();
cmd.Parameters.AddWithValue("@ID", fileID);
MySqlDataReader reader = cmd.ExecuteReader();
reader.Read();
file = (byte[])reader["agreementpdf"];
Title = reader["pdfname"].ToString();
}
finally
{
con.Close();
}
//CREATE RESPONSE TO DOWNLOAD FILE
Response.AddHeader("Content-disposition", "attachment; filename=" + Title);
Response.ContentType = "application/pdf";
Response.BinaryWrite(file);
Response.Flush();
Response.End();
//HttpContext.Current.ApplicationInstance.CompleteRequest();
}
}
Что я делаю не так и как это исправить, или если я не могу загрузить его, как я могу просматривать его только на новой вкладке?