Office365/Sharepoint:: Ошибка API при получении ParentUniqueId для элемента списка

Я пытаюсь определить родительский идентификатор для элемента списка.

Я делаю следующий звонок;

  • https://{sitecollection}/{personal_site}/_api/Web/Lists(guid'blabla')/Items(blabla)?$select=ParentUniqueId

Но это дает мне следующую ошибку;

{
"error": {
    "code": "-1, Microsoft.SharePoint.SPException",
    "message": {
        "lang": "en-US",
        "value": "The field or property 'ParentUniqueId' does not exist."
        }
    }
}

Та же проблема с «ParentLeafName» и некоторыми другими.

Однако, когда я получаю /fields (метафайл поля для списка) для этого списка это поле упоминается вместе с другими, что означает, что я делаю правильный вызов, поскольку я успешно получаю другие поля, такие как

  • https://{sitecollection}/{personal_site}/_api/Web/Lists(guid'blabla')/Items(blabla)?$select=ServerUrl

Результат

{
    "d": {
        "__metadata": {
        "id": "blabla",
        "uri": "blabla",
        "etag": "\"10\"",
        "type": "SP.Data.DocumentsItem"
    },
    "ServerUrl": "/personal/{site}/{filepath}"
   }
}

Однако я заметил одну вещь: эти поля чувствительны к регистру, то есть, если я напишу «serverurl», это даст мне ту же ошибку. Это проблема с полем «ParentUniqueId»?


person Syed Mauze Rehan    schedule 26.09.2014    source источник


Ответы (1)


К сожалению, ресурс ListItem в Интерфейс REST SharePoint 2013 не предоставляет свойство ParentUniqueId.

Но вы можете использовать следующий запрос, чтобы вернуть свойство ParentUniqueId для ListItem:

/_api/Web/Lists/getByTitle('<list title>')/items(<item id>)/FieldValuesAsText?$select=ParentUniqueId

Рекомендации

Справочник по REST API для списков и элементов

person Vadim Gremyachev    schedule 26.09.2014
comment
Спасибо! Еще одна вещь: когда я применяю фильтр к этому уникальному идентификатору, он дает мне пустой список. Скажем, я получаю ParentUniqueId, затем я вызываю {sitecollection}/{site}/items?$filter=UniqueId%20eq%20'theParentUniqueId'..., чтобы получить родительский элемент. Я получаю пустой массив. Хотя я сопоставил этот идентификатор с уникальным идентификатором самого элемента. Одна вещь, которую я заметил, это то, что ParenteUniqueId был в верхнем регистре, поэтому я также попробовал нижний регистр (чтобы точно соответствовать двум), но он все равно дает мне пустой список. - person Syed Mauze Rehan; 26.09.2014
comment
Исправление, я делаю вызов: ››› https://{sitecollection}/{site}/_api/web/lists(guid'id')/items?$filter=UniqueId%20eq%20'ParentUniqueIdValue' - person Syed Mauze Rehan; 26.09.2014
comment
Я также попробовал этот ››› вызов POST ››› URL ››› https://{sitecollection}/{site}/_api/web/lists(guid'id')/getitems ››› POST DATA ››› { 'query' : {'__metadata': { 'type': 'SP.CamlQuery' }, ViewXml: ‹View›‹Query›‹Where› ‹In› ‹FieldRef Name='UniqueId' /› ‹Values› ‹Value Type ='Lookup'›ParentUniqueIdValue‹/Value› ‹/Values› ‹/In› ‹/Where›‹/Query›‹/View› } } ››› Но результат тот же, пустой массив! - person Syed Mauze Rehan; 26.09.2014
comment
{ д: { результаты: [] } } - person Syed Mauze Rehan; 26.09.2014