Swift 3 - NSFetchRequest eindeutige Ergebnisse

8

Jede Hilfe wird geschätzt.

Xcode automatisch auf 8 aktualisiert ... Ich ziele auf IOS 9.3

Haben Sie den ganzen Code konvertiert, aber eine Sache bricht jetzt, ich habe verschiedene Vorschläge in ähnlichen Fragen ausprobiert! Meine Abrufanforderung, dass zuvor funktionierte, bricht jetzt ab.

Mein Ziel ist es, eine eindeutige Liste zu bekommen. Die App stürzt in der Zeile ab:

%Vor%

Mit dem in der Konsole beschriebenen Fehler:

%Vor%

Hier ist die Funktion

%Vor%

Wenn die Zeile darunter versteckt ist, bricht sie nicht, aber dann bekomme ich nicht, was ich will!

%Vor%

Ich verstehe, dass ich alle Ergebnisse (4300) verwenden und sie als Bandaid-Fix durchlaufen könnte, aber das ist nicht der richtige Weg, um das zu beheben, vor allem, weil es vorher funktioniert hat!

    
MyName 22.10.2016, 11:30
quelle

2 Antworten

8

Der Trick besteht darin, das generische Programm genereller zu machen - anstatt <BodyType> in Ihrer Fetch-Anfrage verwenden Sie <NSFetchRequestResult> :

%Vor%

Das Ergebnis dieser Abrufanforderung ist [Any] . Daher müssen Sie vor dem Verwenden in den entsprechenden Wörterbuchtyp umwandeln. ZB:

%Vor%

Hinweis: NSFetchRequestResult ist ein Protokoll, das von vier Typen übernommen wird:
- NSDictionary ,
- NSManagedObject ,
- NSManagedObjectID und
- NSNumber

Normalerweise verwenden wir es mit einem NSManagedObject , z. B. Ihrem BodyType . In diesem Fall erhalten Sie den Dictionary-Typ jedoch aufgrund der folgenden Anweisung:

%Vor%     
leanne 02.12.2016 23:37
quelle
-1
%Vor%     
ahmad Issa 19.12.2017 18:45
quelle

Tags und Links