Ссылка: Ссылка - это простое "A знает B" отношение.Отдельные ссылки не влияют друг на друга.A может знать B, а B может знать C. Следовательно, если у вас есть A, вы можете перейти к C над B. Если вы удалите ссылку, A, B и C все еще будут существовать, они просто больше не будут знать друг друга.
Сдерживание: Сдерживание - это вид "A имеет B" .Обычно используется для списков, например, «A имеет несколько B».ECore / EMF может затем выполнять атомарные команды в таких коллекциях, например, перемещать все объекты из одного контейнера в другой.Он также может применять ограничения, такие как минимальное количество содержащихся объектов или максимальное количество содержащихся объектов, или обеспечение того, чтобы содержащийся объект не содержался ни в каком другом контейнере.
Предположим, у вас есть объект с именем ShoppingCart
со ссылкой, называемой Customer
, и контейнер с именем OrderedProducts
.OrderedProducts
имеет ссылку на Product
.
О чем говорит эта модель?
- Вы можете назначить Клиента в ShoppingCart.Если вы удалите Customer из ShoppingCart, сам объект Customer все еще будет существовать (например, в базе данных)
- Для объектов OrderedProduct требуется ShoppingCart.Если вы удалите один из ShoppingCart, он прекратит свое существование.
- Каждый заказанный продукт имеет ссылку на существующий продукт в базе данных.Если вы удалите один из OrderedProducts из ShoppingCart, продукт в базе данных все равно будет там - только заказ этого продукта для этого конкретного клиента пропал