我試圖使用PowerShell將一批文件上傳到SharePoint Online,並且也包括元數據(列字段)。我知道如何上傳文件,這工作得很好:使用PowerShell將文件上傳到SharePoint Online使用元數據
$fs = New-Object IO.FileStream($File.FullName,[System.IO.FileMode]::Open)
$fci= New-Object Microsoft.SharePoint.Client.FileCreationInformation
$fci.Overwrite = $true
$fci.ContentStream = $fs
$fci.URL = $file
$upload = $list.RootFolder.Files.Add($fci)
$ctx.Load($upload)
$ctx.ExecuteQuery()
,我知道如何編輯的字段/列,這個工程:
...
$item["project"] = "Test Project"
$item.Update()
...
$list.Update()
$ctx.ExecuteQuery()
,但我不知道如何配合兩個在一起。我需要獲取對已上傳文件的項目引用,以便我可以更新項目/文件的元數據。你可以猜到,PowerShell和SharePoint對我來說都是新的!
謝謝,太簡單了!我所需要做的就是添加'$ item = $ upload.ListItemAllFields' – Mateus
沒錯,你非常接近。 'ListItemAllFields'屬性返回一個關聯的列表項 –
@VadimGremyachev我的文檔庫啓用了版本。我在上面使用相同的代碼,但是一些文件上傳完成後我會創建2個主要版本。首先是正常的文件,第二個是顯示元數據值的變化。這是一個正常的行爲? –