AnsweredAssumed Answered

Error al visualizar PDF

Question asked by mali_886@hotmail.com on Apr 24, 2018
Latest reply on Apr 25, 2018 by angelborroy

Buenas tardes

 

Tengo un problema al visualizar los archivos pdf que se descarga desde una aplicación .net  en alfresco aparentemente abre bien y si descargo tambien abre bien,, pero en la aplicación si lo descargo me manda error solo en archivos grandes,  no se puede abrir, no se si es debido a que alfresco convierte el archivo o tal parece que el error es viene desde la aplicación .net este es el código que estamos trabajando.. Espero alguien pueda ayudarme o alguna sugerencia al respecto.

 

/// <summary>

        /// Obtiene el documento de alfresco, valida acceso en Folium.

        /// </summary>

        /// <param name="idFile">Id del documento en FOlium</param>

        /// <param name="idUsuario">Usuario con permiso de descarga (Allow null)</param>

        public string GetDocument(int idFile,string idUsuario)

        {

            var result = string.Empty;

            var objEnt = new EntArchivo { IdArchivo = idFile, User = idUsuario };

            var objProcess = new proFolium();

            var idFileAlf = objProcess.GetIdArchivoAlfresco(User.Flujo, objEnt);

            if (!idFileAlf.Success) return Recursos.Mensajes.msjAlfrescoPermiso;

            var datosDoc = GetInfoFile(idFileAlf.Datos.IdArchivoAlfresco);

            if (string.IsNullOrEmpty(datosDoc.Error))

            {

                WebClient objClient = new WebClient { Credentials = new NetworkCredential(User.UserAlfresco, User.PwsAlfresco) };

                byte[] pdfByte = null;

                pdfByte = objClient.DownloadData(User.SwAlfresco + "/content?id=" + idFileAlf.Datos.IdArchivoAlfresco);

                var Response = HttpContext.Current.Response;

                Response.Clear();

                MemoryStream ms = new MemoryStream(pdfByte.ToArray());

                Response.ContentType = datosDoc.MimeType;

                Response.AddHeader("content-disposition", "attachment;filename=" + datosDoc.Nombre);

                Response.Buffer = true;

                ms.WriteTo(Response.OutputStream);

            }

            else

                result = datosDoc.Error;

            return result;

        }

 

 

Saludos.....

AO

Outcomes