Foros del Web » Programando para Internet » ASPX (.net) »

Descargar facturas

Estas en el tema de Descargar facturas en el foro de ASPX (.net) en Foros del Web. Buenos días, Os voy a poner un trozo de código con el cual ejecuto un fichero ASPX con diferentes datos para poder crear un fichero ...
  #1 (permalink)  
Antiguo 28/07/2010, 02:23
 
Fecha de Ingreso: junio-2010
Mensajes: 134
Antigüedad: 13 años, 10 meses
Puntos: 0
Descargar facturas

Buenos días,

Os voy a poner un trozo de código con el cual ejecuto un fichero ASPX con diferentes datos para poder crear un fichero PDF, logrado lo cual el ordenador me da la opción de poder abrir o almacenar en disco duro (lo típico en descargas de ficheros).

En lo que quiero que me ayudeis es que quiero que ese almacenamiento sea automático, es decir, que no salga la ventana de guardar en y abrir con y directamente se almacene en un directorio que especifique para tal fin.

Un saludo y gracias por todo

StringWriter htmlStringWriter = new StringWriter();
Server.Execute("~/Test/PruebaPDF.aspx", htmlStringWriter);
string htmlCodeToConvert = htmlStringWriter.GetStringBuilder().ToString();
htmlStringWriter.Close();
ExpertPdf.HtmlToPdf.PdfConverter pdfConverter = new ExpertPdf.HtmlToPdf.PdfConverter();
pdfConverter.PdfDocumentOptions.PdfPageSize = ExpertPdf.HtmlToPdf.PdfPageSize.A4;
pdfConverter.PdfDocumentOptions.PdfCompressionLeve l = ExpertPdf.HtmlToPdf.PdfCompressionLevel.Normal;
pdfConverter.PdfDocumentOptions.ShowHeader = false;
pdfConverter.PdfDocumentOptions.ShowFooter = false;
//pdfConverter.LicenseKey = "put your license key here";
string thisPageURL = HttpContext.Current.Request.Url.AbsoluteUri;
string baseUrl = thisPageURL;
byte[] downloadBytes = pdfConverter.GetPdfBytesFromHtmlString(htmlCodeToC onvert, baseUrl);
System.Web.HttpResponse response = System.Web.HttpContext.Current.Response;
response.Clear();
response.AddHeader("Content-Type", "binary/octet-stream");
response.AddHeader("Content-Disposition",
"attachment; filename=Factura.pdf; size=" + downloadBytes.Length.ToString());
//response.Flush();
response.BinaryWrite(downloadBytes);
//response.Flush();
response.Write("<script type='text/javascript'>document.location.href = 'http://localhost:51341/Mapal.FingerNet.Shop/Compra/LectoresHuellas.aspx';</script>");
//response.End();
  #2 (permalink)  
Antiguo 28/07/2010, 04:46
 
Fecha de Ingreso: junio-2010
Mensajes: 134
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: Descargar facturas

Ya lo solucioné.

Thanks
  #3 (permalink)  
Antiguo 28/07/2010, 10:24
 
Fecha de Ingreso: junio-2010
Mensajes: 134
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: Descargar facturas

Lo cierto es que no lo he solucionado. El tema es el siguiente:
Cuando ejecuto ese metodo directamente en un LinkButton, es decir, que se ejecute al hacer un OnClick (pero solo ese trozo de código) funciona a la perfección. Ahora, si lo meto dentro de un <a href="" onclick="nombrefuncion()";> y la funcion de javascript llama a un metodo de C# donde se ejecuta más codigo que el expuesto anteriormente, falla, da un threadexception.

Ayuda please

Etiquetas: facturas, aspx
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:55.