protected void Button5_Click(object sender, EventArgs e) { LogicaNegocio LN = new LogicaNegocio(); string xml = string.Empty; DataTable res = new DataTable(); res = LN.CertificadoElegibilidad("86", "56", "keyla", "admin"); if (res != null) { if (res.Rows.Count > 0) { xml = @"<?xml version=""1.0"" encoding=""UTF-8""?>" + res.Rows[0][0].ToString(); } } XDocument newTree = new XDocument(); XslCompiledTransform xsltt = new XslCompiledTransform(); using (XmlWriter writer = newTree.CreateWriter()) { xsltt.Load(@"C:/inetpub/wwwroot/wss/VirtualDirectories/46185/xsl/CertificadoElegibilidad.xslt"); } using (var sw = new StringWriter()) using (var sr = new StringReader(xml)) using (var xr = XmlReader.Create(sr)) { xsltt.Transform(xr, null, sw); html = sw.ToString(); } try { sDocumento.Append(html); Page.Response.Clear(); byte[] pdfBytes1 = util.ConvertirAPDF_Control(sDocumento); Page.Response.ClearContent(); Page.Response.ClearHeaders(); Page.Response.AddHeader("Content-Type", "binary/octet-stream"); Page.Response.AddHeader("Content-Disposition", "attachment; filename=ContratoSubfianza.pdf; size=" + pdfBytes1.Length.ToString()); Page.Response.BinaryWrite(pdfBytes1); Page.Response.End(); } catch (Exception ex) { LoggingError.PostEventRegister(ex, ConfigurationManager.AppSettings["pathLog"].ToString(), "", "", ConfigurationManager.AppSettings["logName"].ToString(), Convert.ToBoolean(ConfigurationManager.AppSettings["enabledLog"].ToString()), Convert.ToBoolean(ConfigurationManager.AppSettings["enabledEventViewer"].ToString()), ConfigurationManager.AppSettings["registerEventsTypes"].ToString(), EventLogEntryType.Error); } }