0
我有一个核心的数据类与此变种:核心数据似乎不是初始化的零
@NSManaged var tags: NSSet?
的问题是,当类是从数据存储,标签变量,而不是牵强无,用空的NSSet对象初始化。
这种行为是否正常?
我认为这将是零。
更新和问题: 我检查了一个核心数据属性的行为,它在提取后为零。
是否有可能为NSSet/NSOrderedSet的关系核心数据不使用零,但初始化一个空集?
我有一个核心的数据类与此变种:核心数据似乎不是初始化的零
@NSManaged var tags: NSSet?
的问题是,当类是从数据存储,标签变量,而不是牵强无,用空的NSSet对象初始化。
这种行为是否正常?
我认为这将是零。
更新和问题: 我检查了一个核心数据属性的行为,它在提取后为零。
是否有可能为NSSet/NSOrderedSet的关系核心数据不使用零,但初始化一个空集?
核心数据使用断层:
从本质上讲这里所发生的是:
A managed object fault is an instance of the appropriate class, but its persistent variables are not yet initialized.
A relationship fault is a subclass of the collection class that represents the relationship.
所以,你可能有一系列的实例,但你不会知道什么persisten值直到你访问它。
希望这会有帮助
感谢罗恩。因此,在我的情况下,我似乎必须检查套件的长度,而不是零。而对于托管对象,我必须检查“isFault”。这是正确的吗? – Shay
@Shay你不应该直接打电话是故障。一旦你访问了一个管理对象的关系,该故障应该触发并解决它。因此,计数将有助于了解有多少标签。 – Ron
如果您只是在提取标记之前对其进行计数,则可以使用countForFetchRequest或NSManagedObjectContext https://developer.apple.com/library/ios/documentation/Cocoa/Reference/CoreDataFramework/Classes/NSManagedObjectContext_Class/index.html #// apple_ref/occ/instm/NSManagedObjectContext/countForFetchRequest:error: – Ron