通过 Graph API 获取 Sharepoint 列表的列信息:获得冲突的结果

问题描述

我想通过图形 API 检索 SharePoint 列表的列(字段)名称。根据 docs,我可以在请求中使用 expand 查询执行此操作:

GET https://graph.microsoft.com/v1.0/sites/xxx/lists/yyy?expand=columns

在我的站点中使用一个小的自动生成的列表进行测试时(并在使用 columnGroup == "_Hidden" 删除列之后),我得到以下信息:

 [1] "Title"                     "ComplianceAssetId"        
 [3] "wikiCanvasId"              "wikiPageId"
 [5] "wikiTitle"                 "wikiContent"
 [7] "wikiUser"                  "wikiTimestamp"
 [9] "wikiDeleted"               "wikiSession"
[11] "wikiSpare1"                "wikiSpare2"
[13] "wikiSpare3"                "wikiConversationId"       
[15] "wikiMetadata"              "wikiOrder"
[17] "ID"                        "Modified"
[19] "Created"                   "Author"
[21] "Editor"                    "_UIVersionString"
[23] "Attachments"               "Edit"
[25] "LinkTitleNoMenu"           "LinkTitle"
[27] "DocIcon"                   "ItemChildCount"
[29] "FolderChildCount"          "_ComplianceFlags"
[31] "_ComplianceTag"            "_ComplianceTagWrittenTime"
[33] "_ComplianceTagUserId"      "_IsRecord"
[35] "AppAuthor"                 "AppEditor"

然后我通过请求获取此列表的实际项目

GET https://graph.microsoft.com/v1.0/sites/xxx/lists/yyy/items?expand=fields

当我检查项目时,它们在 fields 下有以下字段名称

 [1] "@odata.etag"               "Title"
 [3] "wikiTitle"                 "wikiOrder"
 [5] "id"                        "ContentType"
 [7] "Modified"                  "Created"
 [9] "AuthorLookupId"            "EditorLookupId"
[11] "_UIVersionString"          "Attachments"
[13] "Edit"                      "LinkTitleNoMenu"
[15] "LinkTitle"                 "ItemChildCount"
[17] "FolderChildCount"          "_ComplianceFlags"
[19] "_ComplianceTag"            "_ComplianceTagWrittenTime"
[21] "_ComplianceTagUserId"      "AppAuthorLookupId"
[23] "AppEditorLookupId"         "wikiCanvasId"
[25] "wikiUser"                  "wikiTimestamp"
[27] "wikiDeleted"               "wikiMetadata"
[29] "wikiPageId"

大多数列名匹配,但有些不匹配。它们不应该是相同的吗?

有问题的列表是“频道 {some-id}@thread.skype 的画布项目”,如果重要的话。

解决方法

列表/列将包含内容类型列,项目/字段可能不包含。
FieldValueSet
ColumnDefinition

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...