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

如何使用Java SDK更新SharePoint列表项的选项值

在Microsoft Graph Java SDK中更新SharePoint集合类型字段的解决方案

要解决这个问题,你只需要通过FieldValueSet的additionalDataManager()同时添加集合字段的OData类型声明和字段值即可,SDK的additionalDataManager()支持处理这类未在模型中定义的注解属性。

具体实现代码

ListItem listItem = new ListItem();
FieldValueSet fieldValueSet = new FieldValueSet();

// 1. 添加集合字段的OData类型注解
fieldValueSet.additionalDataManager().put("myCollectionField@odata.type", new JsonPrimitive("Collection(Edm.String)"));

// 2. 构造集合字段的数值数组
JsonArray collectionValues = new JsonArray();
collectionValues.add(new JsonPrimitive("VALUE 1"));
collectionValues.add(new JsonPrimitive("VALUE 2"));
fieldValueSet.additionalDataManager().put("myCollectionField", collectionValues);

// 3. 调用Graph API执行更新操作
graphClient.sites("{site-id}").lists("{list-id}").items("{item-id}").fields()
    .buildRequest()
    .patch(fieldValueSet);

关键说明

  • 这里的myCollectionField需要替换为你SharePoint列表字段的内部名称,而非字段的显示名称,否则API会无法识别。
  • 通过additionalDataManager()存入的键值对会直接映射到请求体中的JSON属性,包括@odata.type这类特殊注解,最终生成的请求体和你手动调用REST API的格式完全一致。

内容的提问来源于stack exchange,提问作者Vitor Santos

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 03:45:54