Ios 核心数据错误:在作用域中没有NSManagedObjectContext时无法获取

Ios 核心数据错误:在作用域中没有NSManagedObjectContext时无法获取,ios,swift,core-data,xmppframework,Ios,Swift,Core Data,Xmppframework,我在Swift中使用XMPPFramework库,它使用核心数据提供消息历史存储。我正在尝试使用以下功能从存储器中请求存档邮件: func getChatHistory() { guard let context = xmppMessageStorage.mainThreadManagedObjectContext else {return} var entityDescription = NSEntityDescription.entity(forEntityName: "X

我在Swift中使用
XMPPFramework
库,它使用核心数据提供消息历史存储。我正在尝试使用以下功能从存储器中请求存档邮件:

func getChatHistory() {

    guard let context = xmppMessageStorage.mainThreadManagedObjectContext else {return}
    var entityDescription = NSEntityDescription.entity(forEntityName: "XMPPMessageArchiving_Message_CoreDataObject", in: context)
    var request = NSFetchRequest<NSFetchRequestResult>(entityName: "XMPPMessageArchiving_Message_CoreDataObject")
    request.entity = entityDescription
    do {
        var messages = try request.execute()
        print("Archived Messages: \n\(messages)")
    } catch let error {
        print("Error fetching chat history: \(error)")
    }

}
func getChatHistory(){
guard let context=xmppMessageStorage.mainThreadManagedObjectContext else{return}
var entityDescription=NSEntityDescription.entity(forEntityName:“XMPPMessageArchiving\u Message\u CoreDataObject”,在:context中)
var request=NSFetchRequest(entityName:“XMPPMessageArchiving\u Message\u CoreDataObject”)
request.entity=entityDescription
做{
var messages=try request.execute()
打印(“存档邮件:\n\(邮件)”)
}捕捉错误{
打印(“获取聊天记录时出错:\(错误)”)
}
}
但是,当我执行该函数时,我收到以下错误:

错误域=NSCOCAERRORDOMAIN代码=134060“A核心数据错误 发生。“UserInfo={message=没有 NSManagedObjectContext在作用域中}

我无法理解为什么会发生这种情况,因为我在代码中正确设置了上下文。如果有人能帮我理解这里出了什么问题,我将不胜感激。

尝试替换

request.entity = entityDescription
do {
  var messages = try request.execute()
  print("Archived Messages: \n\(messages)")
} catch let error {
  print("Error fetching chat history: \(error)")
}

do {
  let messages = try context.fetch(request)
  print("Archived Messages: \n\(messages)")
} catch {
  print("Error fetching chat history:", error)
}