简而言之 :
获取实体并根据@property
哪个不是排序它们attribute
将在第二次运行时导致错误(NSDictionaryMapNode
涉及)。
这是正常的还是错误的?您对此有何评论或帮助?
在长:
情况如下。
我有一个Entity
具有两个属性attribute1
和attribute2
.
我已经生成了[1]一个类Entity.m
并在其中添加了一个@property
名为myProperty
. 因此,myProperty
是@property
我班级的一个,Entity.m
但不是实体的一个属性Entity
。顺便说一句,myProperty
是readonly
(假设它类似于attribute1
与attribute2
.
现在,我执行以下操作:
NSManagedObjectContext * myContext = ... ;
NSFetchRequest * myRequest = [NSFetchRequest fetchRequestWithEntityName:@"Entity"];
NSSortDescriptor * mySortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"myProperty"
ascending:YES] ;
NSError *error ;
[myRequest setSortDescriptors:@[mySortDescriptor]] ;
NSArray * result = [myContext executeFetchRequest:myRequest
error:&error] ;
第一次执行此代码时,我没有任何错误。
第二次,我得到以下错误:
[<NSDictionaryMapNode 0x1020cf310> valueForUndefinedKey:]: this class is not key value coding-compliant for the key myProperty.
我知道问题出在myProperty
不是Entity
. 我的帖子的目的是提出这种情况,并知道您是否会对这种情况发表任何评论。