设置控制器时 NSFetchedResultsController 崩溃

NSFetchedResultsController Crash When Setting the Controller

这是我的代码,我是 运行,我使用控制台消息来确定它在 let frc 命令为 运行 时崩溃了。有趣的是,我有另一个项目,我在其中使用或多或少相同的代码并且它可以工作,但我无法说出我在做什么。是否希望这里有人对此有所了解?

//Create fetchedResultsController to handle Inventory Core Data Operations
    lazy var fetchedResultsController: NSFetchedResultsController<Workorders> = {
        return self.setFetchedResultsController()
    }()
func setFetchedResultsController() -> NSFetchedResultsController<Workorders>{
        print("setFetchedResultsController()")

        let context = gm_getContext()
        let workordersFetchRequest: NSFetchRequest<Workorders> = Workorders.fetchRequest()

        print("set fetch request")

        let frc = NSFetchedResultsController <Workorders>(
            fetchRequest: workordersFetchRequest,
            managedObjectContext: context,
            sectionNameKeyPath: nil,
            cacheName: nil)

        print("set the frc")

        frc.delegate = self

        return frc
    }

我查看了 Apple 的文档,它说我可以将 sectionNameKeyPath 设置为 nil 并将缓存设置为 nil,所以我不确定我做错了什么。

来自苹果文档:

A fetch request. This must contain at least one sort descriptor to order the result