J'ai une liste SharePoint à laquelle j'ajoute de nouveaux éléments ListItems en utilisant le modèle objet client. Ajouter ListItems n'est pas un problème et fonctionne très bien.SharePoint 2010 - Modèle objet client - Ajouter une pièce jointe à ListItem
Maintenant, je veux ajouter des pièces jointes.
J'utilise le SaveBinaryDirect de la manière suivante:
File.SaveBinaryDirect(clientCtx, url.AbsolutePath + "/Attachments/31/" + fileName, inputStream, true);
Il fonctionne sans aucun problème tant que l'élément que je suis en train d'ajouter la pièce jointe, a déjà une pièce jointe qui a été ajouté via le site SharePoint et n'utilisant pas le modèle d'objet client.
Lorsque je tente d'ajouter une pièce jointe à un élément qui ne marche pas avoir toutes les pièces jointes encore, je reçois les erreurs suivantes (les deux se passent, mais pas avec les mêmes fichiers - mais ces deux messages apparaissent toujours):
The remote server returned an error: (409) Conflict
The remote server returned an error: (404) Not Found
Je me suis dit que je devais peut-être d'abord créer le dossier des pièces jointes pour cet article. Lorsque je tente le code suivant:
clientCtx.Load(ticketList.RootFolder.Folders);
clientCtx.ExecuteQuery();
clientCtx.Load(ticketList.RootFolder.Folders[1]); // 1 -> Attachment folder
clientCtx.Load(ticketList.RootFolder.Folders[1].Folders);
clientCtx.ExecuteQuery();
Folder folder = ticketList.RootFolder.Folders[1].Folders.Add("33");
clientCtx.ExecuteQuery();
Je reçois un message d'erreur indiquant:
Cannot create folder "Lists/Ticket System/Attachment/33"
Je possède des droits d'administrateur complets sur le site SharePoint/liste.
Des idées sur ce que je pourrais faire de mal?
Merci, Thorben
Merci pour la réponse, MaxBeard. Au moins savoir que ce n'est pas possible est mieux que d'essayer et d'échouer - il semble que cela devrait être possible. Au fait, bon blog. – Thorben
Cela semble effectivement être le cas ... voir ma réponse pour un exemple de code complet sur la façon d'accomplir cela. –