Ich habe ein CoreData-Modell-Objekt, das einen Typ namens sessionID enthält (eine UUID wird jedes Mal generiert, wenn der Benutzer eine Funktion in der App verwendet) - Daten werden immer mit der gleichen sessionID für jede Sitzung erfasst und aufgezeichnet.NSFetchresultsController mehrfaches Prädikat
Die aufgezeichneten Daten würde wie folgt aussehen: x Anzahl der Zeilen mit lässt sessionID sagen: ... 1 und dann y Anzahl der Datensätze für sessionID: ... 2
`` `
sessionID: 0000-0000-0000-0000-0001, ...
sessionID: 0000-0000-0000-0000-0001, ...
sessionID: 0000-0000-0000-0000-0002, ...
sessionID: 0000-0000-0000-0000-0002, ...
sessionID: 0000-0000-0000-0000-0002, ...
etc. `` `
ich NSFetchResultsController bin mit den Aufzeichnungen für den Benutzer auf einem UITableView zu präsentieren (und es funktioniert) Allerdings würde ich mag eine Option Umschalten zwischen Darstellung aller Aufzeichnungen haben und nur die eindeutige sessionID als Zeilen in der Tabelle vi ew. Ist das mit NSFetchResultController möglich?
Während ich die Anfrage auf eindeutige Ergebnisse zurückgeben, scheint es nicht zu funktionieren, ich bekomme immer noch alle Datensätze.
`` `
[fetchRequest setEntity:entity];
[fetchRequest setReturnsDistinctResults:YES];
[fetchRequest setPropertiesToFetch:@[@"session_id"]];
` ``
Sie können die Abrufanforderung jederzeit ändern, indem Sie sicherstellen, dass der Cache gelöscht wird. – sschale
Mögliches Duplikat von [Warum können wir FetchRequest bei NSFetchedResultsController nicht ändern?] (Https://stackoverflow.com/questions/7200855/why-we-cant-change-fetchrequest-at-nsfetchedresultscontroller) – sschale