Páginas

segunda-feira, 25 de junho de 2012

Manipulando anexos de um item de lista usando SPAttachmentCollection.

Conforme você acompanhou em um tutorial anterior, a classe SPAttachmentCollection é usada para incluir/apagar anexos de um item de uma lista no SharePoint. Como uma coleção, você pode até imaginar: então há vários objetos SPAttachment ou SPFile, e posso referenciar um a um diretamente, certo? Errado.

Coisas do SharePoint... Se você acessar um item de uma lista e então sua propriedade attachments, você terá um array de strings (!) com os nomes dos anexos. Você pode adicionar um arquivo através de um método desta classe, mas não poderá fazer muita coisa além disso...
Para referenciar um anexo do SharePoint, instancie um objeto SPFile. Há duas formas para referenciá-lo:

foreach (string nomeArquivo in item.Attachments)
 
SPFile arquivo = web.GetFile(item.Attachments.UrlPrefix + nomeArquivo);
//Operações com o arquivo aqui. 
 
}

SPFolder pasta = web.Folders["Lists"].SubFolders["TÍTULO DA LISTA"].SubFolders["Attachments"].SubFolders[item.ID.ToString()];
foreach (SPFile arquivo in pasta.Files)
{
 
//Operações com o arquivo aqui. 
}

Com a referência usando o SPFile, fica muito mais fácil. ;)

Nenhum comentário:

Postar um comentário