使用CSOM将SharePoint列表附件复制到文档库可以通过以下步骤实现:
ClientContext context = new ClientContext("https://your-sharepoint-site-url");
List list = context.Web.Lists.GetByTitle("Your List Title");
CamlQuery query = new CamlQuery();
ListItemCollection items = list.GetItems(query);
context.Load(items,
includes => includes.Include(
item => item.AttachmentFiles,
item => item["Title"] // 如果需要获取其他字段,可以在这里添加
)
);
context.ExecuteQuery();
foreach (ListItem item in items)
{
if (item.AttachmentFiles.Count > 0)
{
foreach (Attachment attachment in item.AttachmentFiles)
{
FileCreationInformation fileInfo = new FileCreationInformation();
fileInfo.ContentStream = attachment.OpenBinaryStream();
fileInfo.Url = attachment.FileName;
fileInfo.Overwrite = true;
List documentLibrary = context.Web.Lists.GetByTitle("Your Document Library Title");
Microsoft.SharePoint.Client.File newFile = documentLibrary.RootFolder.Files.Add(fileInfo);
context.Load(newFile);
context.ExecuteQuery();
}
}
}
以上代码将会将列表中的每个附件复制到指定的文档库中。你可以根据实际需求进行修改和扩展。
腾讯云相关产品和产品介绍链接地址:
请注意,以上链接仅供参考,具体产品选择应根据实际需求和情况进行评估和决策。
领取专属 10元无门槛券
手把手带您无忧上云