Я сталкиваюсь с этим сценарием: у меня есть три объекта (EntA, EntB и EntC), EntA и EntB имеют параметр Key‹ EntC>. Также EntC имеет параметр List‹ String>, который содержит ключи EntA и EntB в виде строки.
Чтобы получить ключи любого из сущностей, я сначала должен их сохранить (поле id создается автоматически). Итак, я делаю это:
- Создайте и сохраните EntC, это создаст значение Key‹ EntC>, которое мне нужно для EntA и EntB.
- Я создаю EntA и EntB с помощью Key‹ EntC> и сохраняю их.
- Обновите EntC, добавив Key‹ EntA> и Key‹ EntC> в соответствующий список. Я обнаружил, что сущности не обновляются в DS, а переписываются. Итак, я сначала извлекаю EntC, получаю его идентификатор, который я использую для создания нового объекта EntC, содержащего Key‹ EntA> и Key‹ EntB>. Наконец, я удаляю исходный EntC и сохраняю новый EntC.
Я хотел бы знать, есть ли лучший подход для достижения этого. Кроме того, возможно ли, что другой объект получит идентификатор исходного объекта EntC после того, как я его удалю и до того, как я сохраню новый объект EntC?