ios - 为什么 NSFetchRequest 没有初始化?

标签 ios swift

我正在创建一个 NSFetchRequest,但它在如下创建时无法初始化(在调试器中返回 )。

let request: NSFetchRequest<NSFetchRequestResult> = EntityName.fetchRequest()

然而,当它像这样创建时,它工作得很好:

let request: NSFetchRequest<NSFetchRequestResult> = NSFetchRequest(entityName: "EntityName")

谁能告诉我为什么它会在底部工作而不是在顶部工作? top 方法在使用它的其他三个类中完美运行。

最佳答案

我在测试目标上调用 NSManagedObject.fetchRequest() 时遇到了同样的问题,但我能够通过在托管对象上下文的 block 中调用它来修复它perform(_:) 方法,像这样:

context.perform {
    let request = EntityType.fetchRequest()
    (...)
}

关于ios - 为什么 NSFetchRequest 没有初始化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41275019/

相关文章:

ios - 使用导航 Controller 处理页面之间的数据

swift - 隐藏节点不显示带有名称的子节点

c - Swift 中的任意 C 回调包装器

objective-c - 是否可以更改 NSTimer 的用户信息?

ios - Swift 3 UILabel 获取实际高度(intrinsicContentSize)

ios - SceneKit – SCNCamera 自上而下 View

swift - 将字典传递给 init 方法

ios - Swift - 在 Tic Tac Toe 中编写 Tie 函数

ios - 无法信任设备,因为缺少 "General -> Device Manager"

ios - 如何实现pdf编辑器