Ответ 1
Да, но вам это может не понравиться. Если вы объявите свойство с использованием типа "Дата" Core Data и, пусть Xcode сгенерирует подкласс NSManagedObject
для вас, свойство будет иметь свойство @NSManaged
типа NSDate
. Как вы поняли, вам придется иметь дело с Date
vs. NSDate
самостоятельно.
Если вы не, пусть Xcode создает подкласс для вас (в Xcode 8 установите "Codegen" на "Manual/None" ), вы можете объявить свойство "date" основной информации как нечто как
@NSManaged public var timestamp: Date?
Это просто сработает. Вы можете читать и писать значения Date
, а Core Data будет делать все правильно. Но вы полностью несете ответственность за код в подклассе NSManagedObject
. Вам нужно будет создать весь класс. Если вы обновите модель Core Data, вам также придется обновить класс. Является ли это целесообразным, зависит от вас, но это единственное решение, которое, кажется, существует прямо сейчас.
Обновление. В Xcode 9 сгенерированный код использует Date
, поэтому это больше не нужно.