Ich habe Apples überprüft:
Xcode 8 Versionshinweise:
Ссылка
Migrieren zu Swift 2.3 oder Swift 3 von Swift 2.2
Ссылка
Was ist neu in Core Data in macOS 10.12, iOS 10.0, tvOS 10.0 und watchOS 3.0? Ссылка
Und viele andere ... aber das einzige Dokument, das von Apple erhältlich sein sollte, das Core Data Programming Guide, wurde nicht von Swift 2 aktualisiert.
Ссылка
Idealerweise suche ich so etwas, aber für Swift 3.
Ссылка
Alle Leads würden sehr geschätzt werden.
Per Toms Kommentar (unten) Welchen Schritt fehle ich?
1) Erstellen Sie ein neues Projekt "Test"
2) Wählen Sie CoreDate (Dies erstellt Test.xcdatamodeld)
Dadurch wird AppDelegate automatisch mit folgendem Inhalt gefüllt (Standardkommentare entfernt):
%Vor%3) Erzeuge Entity "Foo"
4) Attribut "bar" type String
hinzufügen5) Fügen Sie unter ViewController.swift Folgendes hinzu (Dies wurde von Apple kopiert, ich habe gerade "... use" durch "print" ersetzt)
%Vor%6) findAnimals () unter override func viewDidLoad () hinzufügen.
Allerdings hat dies speziell Fehler:
7) Also geh du zurück und füge etwas zur Funktion unter dem viewController hinzu, um den Container zugänglich zu machen (was nicht in der Beispielform von Apple war).
%Vor%Großartig, wir haben einen der zwei Fehler gelöscht, aber der Fehler "Verwendung des nicht deklarierten Typs 'NSFetchRequest'" bleibt bestehen.
Und hier ist, wo ich feststecke. Auch nach der Überprüfung aller von Apple veröffentlichten Materialien kann ich kein vollständiges Beispiel finden.
@Aaron Nochmals vielen Dank für die Videoverbindung, die mich auf den richtigen Weg gebracht hat. Im Folgenden finden Sie einen kurzen Überblick über das notwendige Minimum, um mit Swift 3 in Xcode 8 Kerndaten abzurufen, hinzuzufügen und zu löschen.
Fügen Sie unter Class ViewController Folgendes hinzu:
%Vor%Fügen Sie unter override func viewDidLoad () Folgendes hinzu:
%Vor%Ausführen und Sie werden folgendes im Debugging-Bereich gedruckt sehen:
%Vor%Vielleicht ist das Video der diesjährigen WWDC Was ist neu in Core Data kann Ihnen noch mehr geben innen.
Um ungefähr 31:20 Uhr zeigt er Code bezüglich NSFetchRequest
.
Nach meinem Verständnis entkoppelt NSPersistentContainer
den Hauptkontext und den Workerkontext auf einfache Weise. Man kann einfach container.viewContext
für einen Datenzugriff auf Benutzerebene (alter NSMainQueueConcurrencyType) aufrufen und container.newBackgroundContext
für andere Datenimportarbeiten verwenden (alter NSPrivtaeQueueConcurrencyType). Und wenn automaticallyMergesChangesFromParent
auf "wahr" für irgendeinen Kontext gesetzt wird, entspricht es dem alten " NSManagedObjectContextDidSaveNotification
hören".
Referenz: Ссылка