You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用PnP更新SharePoint列表项遇字段问题求助

SharePoint PnP 列表项操作问题解决

一、解决Get-PnPListItem返回字段不全的问题

Get-PnPListItem默认仅返回Id、Title、GUID这类核心字段,若要获取全部字段或指定字段,需添加-Fields参数:

  • 获取所有字段:Get-PnPListItem -List $listTitle -ID $id -Fields "*"
  • 获取指定字段:Get-PnPListItem -List $listTitle -ID $id -Fields "FieldName","OtherFieldName"

二、解决Set-PnPListItem提示列不存在的问题

报错的核心原因是你使用了字段显示名称,而非SharePoint后台识别的字段内部名称。显示名称可能包含空格、特殊字符,但内部名称是标准化的唯一标识。

获取字段内部名称

通过Get-PnPField命令可查看字段的内部名称:

Get-PnPField -List $listTitle | Select-Object Title, InternalName

该命令会输出字段的显示名称(Title)和对应的内部名称(InternalName)。

三、正确的列表项更新语法

确认字段内部名称后,使用以下命令更新列表项内容:

# 替换为实际的内部名称和值
Set-PnPListItem -List $listTitle -Identity $id -Values @{"InternalFieldName" = $value}

若需同时更新多个字段:

Set-PnPListItem -List $listTitle -Identity $id -Values @{
    "InternalField1" = "Value1"
    "InternalField2" = "Value2"
}

补充说明

Set-PnPField确实仅用于修改字段的元数据(如显示名称、字段类型、必填规则等),不负责更新列表项的内容,你的这一理解是正确的。

内容的提问来源于stack exchange,提问作者n8.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 03:10:26