【发布时间】:2017-05-15 13:26:23
【问题描述】:
我使用 swift 3 和 nsoutlineview。 我想将核心数据记录的 objectID 保存到文本字段中。 所以我必须把它转换成一个字符串:
txtFied.stringValue = "\(CoreData[outlineView.selectedRow].objectID)"
如何将其转换回 NSManagedObjectID?
【问题讨论】:
我使用 swift 3 和 nsoutlineview。 我想将核心数据记录的 objectID 保存到文本字段中。 所以我必须把它转换成一个字符串:
txtFied.stringValue = "\(CoreData[outlineView.selectedRow].objectID)"
如何将其转换回 NSManagedObjectID?
【问题讨论】:
我已经通过持久存储协调器的 managedObjectID(forURIRepresentation:) 方法完成了这项工作,如下所述:
// Convert NSManagedObjectID to a string, via the uriRepresentation method.
let objectIDString = <your managed object ID>.uriRepresentation().absoluteString
...
// Use the persistent store coordinator to transform the string back to an NSManagedObjectID.
if let objectIDURL = URL(string: objectIDString) {
let coordinator: NSPersistentStoreCoordinator = <reference to your persistent store coordinator>
let managedObjectID = coordinator.managedObjectID(forURIRepresentation: objectIDURL)
}
【讨论】: