如何处理CoreData中的Set属性

时间:2016-09-23 03:01:04

标签: ios swift core-data

我有一个对象EventReminder,它包含2个Set对象:

var importantDates: Set<NSDate>
var recurringDays: Set<DayOfWeek>
.
.
.
enum DayOfWeek: Int {
    case Sunday = 0
    case Monday
    case Tuesday
    case Wednesday
    case Thursday
    case Friday
    case Saturday
}

我想将其转换为CoreData,但我无法将其全部映射出来。我的班级与NSDate(通过importantDates)和DayOfWeek(通过recurringDays)有多对多的关系。

我:

  1. 制作2个importantDatesrecurringDays类,每个类只包含1个属性:NSDateDayOfWeek

  2. EventReminder和这两个类之间建立关系吗?

  3. 我是否必须使枚举DayOfWeek符合NSCoding? (不确定这是否可能)
  4. 我是否能够找到合适的解决方案,或者有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

不要仅仅为了持有NSDate或枚举而制作单独的NSManagedObject。

您可以在CoreData中存储Set,只需使用自定义类Set进行转换即可。