SwiftUI ottenere totale voce (riga in SQL termini) conte da Dati di base dell'entità [duplica]

0

Domanda

Utilizzando SwiftUI (2021) XCode 13.1 / iOS 14.5+ e i Dati di Nucleo sto cercando di ottenere il più efficace conteggio totale all'interno di un ente.

Questo da un SQL prospettiva è come ottenere il numero totale di righe da una tabella.

L'Ente non potrà mai contenere molti 'righe', probabilmente, mai più di 40.

Ho cercato su google un sacco di esempi (anche qui), ma alcuni sono vecchi e la maggior parte non funzionano. Sembra essere qualcosa a che fare con countForFetchRequest ma io non sono sicuro al 100%.

Ho già configurato il contenitore e le entità che contiene semplicemente un campo id e un campo di testo.

Sono ancora nuovo di Dati di base e quindi spero di avere la terminologia corretta, ma da una serie di esempi di questo che mi sono giunti. (notare che ho bisogno di dati a persistere dopo l'applicazione è chiusa).

import CoreData

class FooCoreDataService {
    
    private let container: NSPersistentContainer
    private let containerName: String = "FooCoreDataModel"
    private let entityName: String = "FooEntity"
    
    init() {
    
        container = NSPersistentContainer(name: containerName)
    
        container.loadPersistentStores { (_, error) in
            if let error = error {
                print("Error loading Core Data! \(error)")
            }
        }
        
    }
    
    // Get total item ('Row') count of FooEntity 
    func getFooCount() -> Int {
        
        var countOfItems: Int = 0
        
        // NOT SURE WHAT GOES HERE
        
        let fetchRequest = NSFetchRequest ????
        
        // SOMETHING TO DO WITH countForFetchRequest ????
        
        
        return countOfItems
    }

}
core-data entity nsfetchrequest swift
2021-11-23 00:18:54
1

Migliore risposta

0

È questo ciò di cui avete bisogno?

static func getFooCount() -> Int {
   let object = (UIApplication.sharedApplication().delegate as! AppDelegate).managedObjectContext
   let fetchRequest = NSFetchRequest<NSFetchRequestResult>(entityName: "Product")
   let countOfItems = try! object.count(for: fetchRequest)
   return countOfItems
}
2021-11-23 04:22:52

In altre lingue

Questa pagina è in altre lingue

Русский
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................