[英]Core Data - Count of Related Records
I am new to Core Data programming and am trying to work out the concepts involved. 我是Core Data编程的新手,正在尝试弄清所涉及的概念。 I have an object called a
Lease
that has a many-to-many relationship with Apartment
objects. 我有一个名为
Lease
的对象,该对象与Apartment
对象具有多对多关系。 Given a Lease
object, how do I get a count of the related Apartment
objects or an NSArray of the related objects? 给定一个
Lease
对象,如何获得相关的Apartment
对象或相关对象的NSArray的计数?
Thank you! 谢谢!
~~Garth ~~地狱
There are a couple different ways: 有几种不同的方法:
Using the generated Core Data accessor: 使用生成的核心数据访问器:
NSSet * apartments = [myLease apartments];NSSet *公寓= [myLease公寓];\nNSUInteger numberOfApartments = [apartments count];
NSUInteger numberOfApartments = [公寓数量];
Using KeyPaths: 使用KeyPath:
NSSet * apartments = [myLease valueForKey:@"apartments"];NSSet *公寓= [myLease valueForKey:@“ apartments”];\nNSUInteger numberOfApartments = [apartments valueForKey:@"@count"];
NSUInteger numberOfApartments = [公寓valueForKey:@“ @ count”];
Using KVC (if your class is fully KVC-compliant): 使用KVC(如果您的课程完全兼容KVC):
NSUInteger numberOfApartments = [myLease countOfApartments];NSUInteger numberOfApartments = [myLease countOfApartments];
Using a fetch request: 使用提取请求:
NSFetchRequest * r = [[NSFetchRequest alloc] init];NSFetchRequest * r = [[NSFetchRequest alloc] init];\n[r setEntity:apartmentEntityDescription];
[r setEntity:apartmentEntityDescription];\n[r setPredicate:[NSPredicate predicateWithFormat:@"lease = %@", myLease]];
[r setPredicate:[NSPredicate predicateWithFormat:@“ lease =%@”,myLease]];\nNSArray * apartments = [myManagedObjectContext executeFetchRequest:r error:nil];
NSArray *公寓= [myManagedObjectContext executeFetchRequest:r错误:无];\nNSUInteger numberOfApartments = [myManagedObjectContext countForFetchRequest:r error:nil];
NSUInteger numberOfApartments = [myManagedObjectContext countForFetchRequest:r错误:无];\n[r release];
[r版本];
Feel free to mix-and-match those lines. 随意混合和匹配这些行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.