Como faço uma solicitação de busca usando a nova função fetchRequest do NSManagedObject?

No iOS 10, a equipe CoreData adicionou um novo método "fetchRequest" ao NSManagedObject. Se parece com isso:

public class func fetchRequest() -> NSFetchRequest<NSFetchRequestResult>

O que, pelo que entendi, nos permite substituir isso:

let request = NSFetchRequest<MyEntity>(entityName: "MyEntity")

com isso:

let request = MyEntity.fetchRequest()

No entanto, quando tento fazer uma solicitação simples como esta:

let request = MyEntity.fetchRequest()
do {
    results = try request.execute()
} catch let error {
    print("failed to fetch coffee object: \(error)")
}

Eu recebo o seguinte erro:

Domínio de erro = Código NSCocoaErrorDomain = 134060 "(nulo)" UserInfo = {message = Não é possível buscar sem um NSManagedObjectContext no escopo}

Portanto, claramente o erro está afirmando que eu preciso colocar um NSManagedObjectContext no escopo. Estive procurando exemplos, mas parece que consigo encontrar um exemplo completo de como executar uma solicitação usando os novos recursos da API.

Pergunta, questão

Usando os recursos mais recentes da API de dados principais, como faço uma solicitação de busca simples? A questão subjacente é como coloco meu NSmanagedObjectCotnext no escopo.

Devo observar que sou capaz de fazer uma solicitação com sucesso usando a sintaxe tradicional.

questionAnswers(2)

yourAnswerToTheQuestion