我在一个实体上有一个CoreData属性,我想要存储大于Int32.max和的整数值UInt32.max.该值用作索引,因此查找性能很重要.所以我选择Integer 64在CoreData中使用as数据类型.
现在我正在努力研究如何在我的实体实例上存储Int64.另请参阅我尝试过的以下不同方法.
用途NSNumber:
import Foundation
import CoreData
class Node : NSManagedObject {
@NSManaged var id : NSNumber
}
node.id = Int64(1)
> 'Int64' is not convertible to 'NSNumber'
Run Code Online (Sandbox Code Playgroud)
用途NSInteger:
import Foundation
import CoreData
class Node : NSManagedObject {
@NSManaged var id : NSInteger
}
node.id = Int64(1)
> 'Int64' is not convertible to 'NSInteger'
Run Code Online (Sandbox Code Playgroud)
用途Int64:
import Foundation
import CoreData
class Node : NSManagedObject {
@NSManaged var id …Run Code Online (Sandbox Code Playgroud) 我正在尝试更改Bool属性并收到EXC_BAD_ACCESS错误.
我正在使用XCode 6和Swift.
该note属性保存良好,但completed属性抛出EXC_BAD_ACCESS错误

import Foundation
import CoreData
class Task: NSManagedObject
{
@NSManaged var note: String!
@NSManaged var completed: Bool
}
Run Code Online (Sandbox Code Playgroud)
更改属性例程
// taskObject is an instance of Task()
// Set the completed flag
taskObject.completed = true // EXC_BAD_ACCESS
Run Code Online (Sandbox Code Playgroud)