Я пытаюсь использовать API VSTS, чтобы удалить все родительские ссылки на элементы и установить эти родительские элементы как связанные элементы.
https://www.visualstudio.com/en-us/docs/integrate/api/wit/work-items#update-work-items
Я не совсем понимаю, как работает «Путь», необходимый для удаления отношений - я получаю противоречивые результаты, где иногда это работает, иногда нет (поэтому я явно делаю это неправильно)
Я делаю предположение, что это просто порядок, возвращаемый API. Так, например:
- Индекс[0] элемент
- Индекс[1] элемент
Элемент Index[2] ‹ — это тот, который я хочу удалить, поэтому я использую индекс 2
public void RemoveParentLink(int pathIndex, int itemToUpdate, string link) { JsonPatchDocument patchDocument = new JsonPatchDocument(); patchDocument.Add( new JsonPatchOperation() { Operation = Operation.Remove, Path = $"/relations/{pathIndex}" } ); WorkItem result = witClient.UpdateWorkItemAsync(patchDocument, itemToUpdate).Result; }
В документации указано, что Path:
Путь к значению, которое вы хотите добавить, заменить, удалить или протестировать. Для конкретного отношения используйте «relations/Id». Для всех отношений используйте «/relations/-».
Конечно, индекс НЕ является идентификатором, но как мне точно получить отношение/идентификатор?