SwiftUI obtenir le total de l'élément (ligne de SQL termes) compter à partir de la Base de Données de l'entité [dupliquer]

0

La question

À l'aide de SwiftUI (2021) XCode 13.1 / iOS 14.5+ et de Base de Données, je suis en train d'essayer d'obtenir le plus efficace total nombre au sein d'une entité.

Ce SQL à partir d'un point de vue, c'est comme entrer le nombre total de lignes dans une table.

L'Entité ne sera jamais contenir de nombreux "rangées" probablement jamais plus de 40.

J'ai Googlé un bon nombre d'exemples (y compris ici), mais certains sont vieux et la plupart ne fonctionnent pas. Il semble être quelque chose à faire avec countForFetchRequest mais que je ne suis pas sûr à 100%.

J'ai déjà configuré le récipient et l'entité qui contient un champ id et un champ de texte.

Je suis encore nouveau pour la Base de Données donc j'espère avoir la terminologie correcte, mais à partir de différents exemples, c'est ce que je suis venu avec. (en notant que j'ai besoin de données pour persister après l'application est fermée).

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

La meilleure réponse

0

Est-ce que vous avez besoin?

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

Dans d'autres langues

Cette page est dans d'autres langues

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