【问题标题】:How do I insert into a user column in a SharePoint list using Graph API?如何使用 Graph API 插入 SharePoint 列表中的用户列?
【发布时间】:2023-01-10 21:54:25
【问题描述】:

我正在尝试使用 Microsoft Graph API 在 SharePoint 列表中创建一个项目,并且所有字段都在插入,除非我添加用户列时出现以下错误:

"code": "generalException",
"message": "General exception while processing".

根据研究,要插入用户列,需要用户的 LookupId。我对用户栏的请求正文如下:

{
    "fields": {
        "[ColumnName]LookupId": "12"
    }
}

如果有人可以建议我做错了什么,或者如果我可以使用用户的电子邮件插入会更好。

干杯。

【问题讨论】:

  • 我相信您的响应正文应该如下所示 { "fields": { "Title": "Item 1", "UserField": { "id": "{user-id}" } } }

标签: api rest sharepoint graph microsoft-graph-api


【解决方案1】:

一切都符合您的要求,但此正文仅适用于 lookup/user 列,其中设置“允许多项选择”为 false。我猜你的情况是true。 您可以使用端点进行检查

GET https://graph.microsoft.com/v1.0/sites/{{SiteId}}/lists/{{ListName}}/contentTypes?expand=columns(select=name,type,personOrGroup)

personOrGroup.allowMultipleSelection 将显示标志。

对于允许多选的userlookup 类型列,请使用以下正文(显然您可以在数组中传递多个值):

{
    "fields": {
        "[columnName]LookupId@odata.type":"Collection(Edm.String)",
        "[columnName]LookupId":["12"] 
    }
}

至于用电子邮件引用用户字段,我认为使用 Graph API 是不可能的,但是如果它支持,您可以检查 Sharepoint REST API v1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-01-25
    • 1970-01-01
    • 2021-11-04
    • 2017-10-09
    • 2019-07-07
    • 2017-07-30
    • 1970-01-01
    相关资源
    最近更新 更多