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

Asd*_*bal 7 xcode core-data ios swift swift3

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

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

var fetchedResultsController: NSFetchedResultsController<AnyObject>!
Run Code Online (Sandbox Code Playgroud)

我收到的错误是

 Type 'AnyObject' does not conform to protocol 'NSFetchRequestResult'
Run Code Online (Sandbox Code Playgroud)

我试图遵守AnyObject

extension AnyObject: NSFetchRequestResult {}
Run Code Online (Sandbox Code Playgroud)

但我收到另一个错误

在此输入图像描述

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

回答: var fetchedResultsController: NSFetchedResultsController<Content>!

Rob*_*ier 8

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

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