#odata #navigation-properties
#odata #навигация-свойства
Вопрос:
У меня есть ресурс A, у которого есть свойство навигации, указывающее на ресурс B. Схема выглядит следующим образом:
Ресурс A:
- ID
- B (это свойство навигации «один ко многим»)
Ресурс B:
- ID
- Свойство1
- Свойство2
Могу ли я обновить значения ресурса B (т.е. обновить property1 и property2 B) через навигационную ссылку A? Другими словами, могу ли я сказать A.B[5].Свойство1 = x?
В спецификации OData и примерах я вижу только описания изменения того, какой экземпляр B связан с A (т. Е. изменение /A (0) / $links/B), но не могу ли я ПОМЕСТИТЬ / ОБЪЕДИНИТЬ в /A (0) / B (2) и изменить сам B .
Комментарии:
1. Почему бы просто не отправить PUT в /B(2)? … нужно ли гарантировать, что B (2) связано с A (0)?
Ответ №1:
Вы должны иметь возможность отправлять запрос PUT в / A (0) / B (2) и изменять свойства B.
Комментарии:
1. Как насчет изменения коллекции B в целом? Могу ли я выполнить СЛИЯНИЕ в / A (0) / B и опубликовать массив обновленных значений свойств?
2. Нет — для этого вам нужны URL-адреса $ links, как вы отметили в своем вопросе.