类型’AnyObject’不符合协议’NSFetchRequestResult’

我刚刚安装了Xcode 8 beta 2iOS 10 beta 。 我有一个现有的项目,我根据Xcode的提示从swift 2.3更新到swift 3。 我的代码数据代码收到错误。

这是由xcode从swift 2.3转换为swift 3时自动生成的

 var fetchedResultsController: NSFetchedResultsController! 

我收到的错误是

  Type 'AnyObject' does not conform to protocol 'NSFetchRequestResult' 

我试图符合AnyObject

 extension AnyObject: NSFetchRequestResult {} 

但我收到另一个错误

在此处输入图像描述

我不确定我需要做什么,或者我的fetchedResultsController是否需要首先更改。

答案: var fetchedResultsController: NSFetchedResultsController!

Xcode转换器可能对您想要在此获取的结果控制器中返回的Entity感到困惑。 将AnyObject替换为您要获取的实体类型。

你应该打开一个雷达(bugreporter.apple.com),因为它不应该在这里建议AnyObject 。 在最坏的情况下,它应该建议NSManagedObject