如何自动生成日期属性为 Date 而不是 NSDate 的 NSManagedObject 子类?

How to auto generate NSManagedObject subclasses with date attribute as Date instead of NSDate?

我目前正在将我的项目更新为 Swift 3,并且我正在将所有 NSDate 方法和扩展移至 Date 以保持应用程序的标准。

问题是我使用 Xcode 自动生成我的 NSManagedObject 子类,它生成日期属性作为 NSDate 而不是 Date。

有没有办法用日期属性生成它作为日期?

编辑

根据 Apple Developer Documentation:

Core Data natively supports a variety of attribute types, such as string, date, and integer (represented as instances of NSString, NSDate and NSNumber respectively).

所以我觉得不可能=/

目前不可能,因为 Core Data 仍然与 Objective-C 类型密切相关,这是它显示的地方之一。

但是,您仍然可以将 Date 分配给 NSDate 属性:

    newEvent.timestamp = Date() as NSDate

这远非理想,但如果您有其他使用 Date 的代码,则不必让它使用 NSDate。仅在直接使用托管对象时使用 as 进行转换。