SORU
12 ŞUBAT 2010, Cuma


Hızlı eğer bir nesnenin Temel Veri olup olmadığını kontrol etmek için bir yol değil mi?

Eğer bir nesne Çekirdek Verileri kalıcı olup olmadığını görmek istiyorum. Örneğin, TEMEL Veri Arkadaşlarım var, ve adı ile onları tanımlamak. "George" diye bilinir. görmek için çekirdek veri sorgu edebilirim Eğer sonuç dizi seti sıfır'den fazla nesne içeriyorsa, George orada olduğunu biliyorum. Ama Çekirdek Veri belleğe her şeyi yükler, ve ben aslında sadece George saklı olup olmadığını bilmek istiyorum.

Bunu nasıl en verimli şekilde yapayım?

CEVAP
12 ŞUBAT 2010, Cuma


Temel Veri talep kurulum ve aslında sorgu vermek yerine, aşağıdakileri yapın:

NSError *error = nil;
NSUInteger count = [managedObjectContext countForFetchRequest:request
                                                        error:&error];
if (!error) {
    return count;
} else {
  return 0;
}

Uygulama yöntemi countForFetchRequest:error: fetch belirli bir isteği varsa executeFetchRequest:error: geçmiş olsaydı iade olurdu nesne sayısını verir.


Düzenleme:(Regexident tarafından)

GibiJosh Caswelldoğru, hataları işlemek için doğru şekilde yorumladı bu ya:

if (count == NSNotFound) {
    NSLog(@"Error: %@", error);
    return 0;
}
return count;

ya bu hata günlüğü olmadan ():

return (count != NSNotFound) ? count : 0;

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Deany Boii

    Deany Boii

    27 Kasım 2007
  • GFX Tutorials

    GFX Tutorial

    12 AĞUSTOS 2013
  • Kupa World

    Kupa World

    1 EYLÜL 2011