Hallo zusammen,
ich lerne gerade das Thema Core Data und habe die Aufgabe eine Abfrage zur Anzahl der Einträge zu erstellen. Dafür soll eine Meldung ausgegeben werden. Es funktioniert auch alles soweit wie gefordert. Nun meine Frage an euch, ob der Code so passt oder ich ggf. Zeilen verwende die nicht sein müssen. Wie gesagt ich stehe am Anfang und lerne noch, also bitte ich um Nachsicht
Auf euer Feedback freue ich mich und bedanke mich schon einmal.
Alles anzeigen
ich lerne gerade das Thema Core Data und habe die Aufgabe eine Abfrage zur Anzahl der Einträge zu erstellen. Dafür soll eine Meldung ausgegeben werden. Es funktioniert auch alles soweit wie gefordert. Nun meine Frage an euch, ob der Code so passt oder ich ggf. Zeilen verwende die nicht sein müssen. Wie gesagt ich stehe am Anfang und lerne noch, also bitte ich um Nachsicht
Auf euer Feedback freue ich mich und bedanke mich schon einmal.
Quellcode
- @IBAction func infoClicked(_ sender: AnyObject) {
- //den Delegaten beschaffen
- let appDelegate = NSApplication.shared.delegate as! AppDelegate
- //den Objektkontext beschaffen
- objektKontext = appDelegate.persistentContainer.viewContext
- //die Entität beschaffen
- let entitaet = NSEntityDescription.entity(forEntityName : "Adressen", in: objektKontext)
- //die Suchanfrage erzeugen
- let anfrage = NSFetchRequest<NSFetchRequestResult>()
- //die Entität zuweisen
- anfrage.entity = entitaet
- //die Suche definieren
- let suche = NSPredicate(format: "(nachname != NULL)")
- //und zuweisen
- anfrage.predicate = suche
- //die Suche ausführen
- do {
- let treffer = try objektKontext.fetch(anfrage)
- //liefert die Suche ein Ergebnis?
- if !treffer.isEmpty {
- //Gibt es einen Treffer?
- if treffer.count > 0 {
- let ergebnis = treffer.count
- //Ausgabe der Meldung wieviel Einträge es gibt
- meineMeldung(meinText: "Es befinden sich \(ergebnis) Einträge in der Datenbank")
- }
- }
- else {
- //Wenn keine Einträge vorhanden sind wird folgende Meldung ausgegeben
- meineMeldung(meinText: "Es wurden keine Einträge gefunden")
- }
- }
- catch {
- //Gab es bei der Suche einen Fehler
- meineMeldung(meinText: "Fehler!")
- }
- }