Suche nach einem übersichtlichen Tutorial zum überarbeiteten NSPersistentContainer in Xcode 8 mit Swift 3

8

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ügen

5) 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:

  1. NSFetchRequest & lt; Verwendung des nicht deklarierten Typs 'NSFetchRequest'
  2. Kontext & lt; Verwendung des nicht aufgelösten Bezeichners 'context'

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.

    
Michael Garito 20.09.2016, 05:07
quelle

4 Antworten

7

@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.

  1. Neues Projekt & gt; iOS Einzelansicht Anwendung
  2. Produktname: "Probe"
  3. Verwenden Sie Core Data (markiert)
  4. Speichern
  5. Öffnen Sie Sample.xcdatamodeld
  6. Hinzufügen und Entität: "SampleEntity"
  7. Verwenden Sie den Datenmodell-Inspektor, um Codegen (unter Klasse) auf "Klassendefinition"
  8. zu setzen
  9. Erstellen Sie ein Attribut unter der neuen Entität: "sampleAttribute"
  10. Öffnen Sie ViewController.swift
  11. Unter "import UIKit" fügen Sie "CoreData importieren"
  12. hinzu
  13. Fügen Sie unter Class ViewController Folgendes hinzu:

    %Vor%
  14. Fügen Sie unter override func viewDidLoad () Folgendes hinzu:

    %Vor%
  15. Ausführen und Sie werden folgendes im Debugging-Bereich gedruckt sehen:

    %Vor%
Michael Garito 23.09.2016 03:55
quelle
2

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 .

    
Aaron 21.09.2016 16:43
quelle
0

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: Ссылка

    
BabyPanda 23.09.2016 19:45
quelle
0

Ich kann immer noch keine Kommentare hinterlassen. Also lass es mich hier ansetzen. Ich glaube, diese beiden Videos werden dir sehr helfen. Great Stanford Courses von Paul Hegarty sind auf dem neuesten Stand!

Ссылка - Vortrag über CoreData Ссылка - Demo für die Verwendung von CoreData.

    
DJ-Glock 12.05.2017 16:40
quelle

Tags und Links