¿Cómo listar los adjuntos de un ítem de lista en c# en SharePoint?

El resultado





El código


        public static string htmlAdjuntos(string lista, int id, int total)
        {
            string html = «»;
            if (total > 0)
            {
                using (SPWeb web = SPContext.Current.Web)
                {

                    // Busco el ítem            
                    string listaURL = web.ServerRelativeUrl + «/Lists/» + lista;
                    listaURL = listaURL.Replace(«//», «/»);
                    SPList listaAdjuntos = web.GetList(listaURL);
                    SPListItem item = listaAdjuntos.GetItemById(id);

                    // Busco adjuntos
                    SPAttachmentCollection adjuntos = item.Attachments;
                    foreach (string adjunto in adjuntos)
                    {
                        string urlAdjunto = SPUrlUtility.CombineUrl(item.Attachments.UrlPrefix, adjunto);
                        SPFile archivoAdjunto = web.GetFile(urlAdjunto);
                        string nombreAdjunto = archivoAdjunto.Name;
                        html += «&nbsp;<a style=’border:none;’ href='» + urlAdjunto + «‘>» + iconoAdjunto(nombreAdjunto) + «</a>»;
                    }

                }

            }

            return html;
        }
        public static string iconoAdjunto(string hint)
        {
            string extension = Path.GetExtension(hint).ToLower();
            if (extension != «.doc» && extension != «.docx» && extension != «.xls» && extension != «.xlsx» && extension != «.ppt» && extension != «.pptx» && extension != «.txt» && extension != «.zip» && extension != «.bmp» && extension != «.jpg» && extension != «.jpeg» && extension != «.png»)
                extension = «gen»;
            if (extension != null) extension = extension.Split(‘.’)[1];
            return icono(hint, «ic» + extension + «.gif»);
        }

        public static string icono(string hint, string img)
        {
                return «<img title='» + hint + «‘ border=’none’ src=’/_layouts/images/» + img + «‘/>»;
        }

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *