将旧的 Sharepoint 列表导出到较新的 Sharepoint

Exporting old Sharepoint list into newer Sharepoint

是否可以在 2013 Sharepoint Server 上导出 Sharepoint 2010 列表? 我希望能够将 2010 网站列表中的内容导出到 csv 文件,然后使用 PowerShell 将其导入 2013 网站列表。

当 运行 脚本时,我收到一个 :

Get-SPWeb : Cannot find an SPSite object that contains the following Id or Url:" error.
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue

#Get the Web
$web = Get-SPWeb -identity "http://www.test2010.com/site/"

#Get the Target List
$list = $web.Lists["My List"]

#Array to Hold Result - PSObjects
$ListItemCollection = @()

 #Get All List items where Status is "In Progress"
 $list.Items |  Where-Object { $_["ID"] -ge 1} | foreach {
 $ExportItem = New-Object PSObject
 $ExportItem | Add-Member -MemberType NoteProperty -name "Title" -value $_["Title"]
 $ExportItem | Add-Member -MemberType NoteProperty -name "ID" -value $_["ID"]

 #Add the object with property to an Array
 $ListItemCollection += $ExportItem
 }
 #Export the result Array to CSV file
 $ListItemCollection | Export-CSV "c:\ListInfo.csv" -NoTypeInformation                       

#Dispose the web Object
$web.Dispose()

Powershell 用来通过 Microsoft.SharePoint.Powershell 管理单元与 SharePoint 交互的服务器对象模型只能与同一服务器上的 SharePoint 环境 运行 交互。也就是说,需要与 SharePoint 场交互的任何此类 Powershell 脚本都需要从该场的 Web 前端服务器执行。

如果您 运行 来自不属于该 SharePoint 场的服务器的 Powershell,并且仍需要访问该场中的列表,请考虑改用 SharePoint 的客户端对象模型。由于可以通过 .NET 代码访问客户端对象模型,因此仍然可以使用 Powershell。