Допустим, у меня есть иерархия наследования следующим образом:
Устройство <- EthernetDevice <- WirelessDevice </p>
Таким образом, беспроводное устройство является подклассом EthernetDevice, который является подклассом устройства.
Хорошо, поэтому, если пользователь создает объект Device, а затем пользователь решает, что это на самом деле беспроводное устройство, как я могу изменить тип объекта? В данный момент я создаю новый управляемый объект WirelessDevice и, по существу, перемещаюсь по каждому свойству объекта Device и назначаю его тому же свойству объекта WirelessDevice. Затем сообщаем ManagedObjectContext об удалении объекта Device. Это самый простой способ? Существует ли какая-либо форма приведения типов или метод стиля копирования, который также уведомляет ManagedObjectContext об изменении?
Спасибо