【问题标题】:Coredata crash when I dismiss a view当我关闭视图时Coredata崩溃
【发布时间】:2020-10-23 10:22:54
【问题描述】:

我正在构建一个在核心数据中搜索实体的视图。我用核心数据的搜索结果填充了一个数组。代码工作正常,但是当我关闭视图时,我收到以下错误并且我的应用程序崩溃。 我的系统是 XCode 12 Macos catalina 这是我收到的错误消息, 异常 NSException * "+entityForName: nil 不是用于搜索实体名称“Proveedor”的合法 NSPersistentStoreCoordinator" 0x0000600001be47e0

代码:

extension Proveedor {
    
    static func getProveedoresWith(string:String?, context:NSManagedObjectContext) -> [Proveedor]? {
        guard let partialString = string else { return nil }
        print(partialString)
        let request = NSFetchRequest<Proveedor>(entityName: "Proveedor")
        request.predicate = NSPredicate(format: "nombreFantasia CONTAINS %@", partialString)
        request.sortDescriptors = [NSSortDescriptor(key: "nombreFantasia", ascending: false)]
        let result = try? context.fetch(request)
        print(result)
        return result
    }
}


struct FaenaManagerSeleccionarProveedorView: View {
    
    @Environment(\.managedObjectContext) var context
    @Binding var isShowing:Bool
    @State var aBuscar = ""
    
    var proveedores:[Proveedor]? {
        Proveedor.getProveedoresWith(string: aBuscar, context: context)
    }
        
    var body: some View {
        
        VStack {
            TextField("value", text: $aBuscar)
                .padding()
                .font(.system(size: 12, weight: .light, design: .monospaced))
            List {
                ForEach(proveedores ?? [], id:\.id) { proveedor in
                    Text(proveedor.nombreFantasia!)
                }
            }
        }
    }
}

如果有人可以给我一个提示。

问候

【问题讨论】:

    标签: ios swift xcode core-data swiftui


    【解决方案1】:

    我找到了答案,问题是我使用的是背景上下文。

    而不是使用视图上下文。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-17
      • 1970-01-01
      • 2023-03-06
      • 2020-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多