NSOrderedSet 生成的访问器中抛出异常

2024-03-03

在我的 Lion 应用程序上,我有这个数据模型:

关系subitems inside Item 已订购.

Xcode 4.1(内部版本 4B110)已为我创建了该文件Item.h, Item.m, SubItem.h and SubItem.h.

这是内容(自动生成)Item.h:

#import <Foundation/Foundation.h>

#import <CoreData/CoreData.h>

@class SubItem;

@interface Item : NSManagedObject {
@private
}

@property (nonatomic, retain) NSString * name;
@property (nonatomic, retain) NSOrderedSet *subitems;
@end

@interface Item (CoreDataGeneratedAccessors)

- (void)insertObject:(SubItem *)value inSubitemsAtIndex:(NSUInteger)idx;
- (void)removeObjectFromSubitemsAtIndex:(NSUInteger)idx;
- (void)insertSubitems:(NSArray *)value atIndexes:(NSIndexSet *)indexes;
- (void)removeSubitemsAtIndexes:(NSIndexSet *)indexes;
- (void)replaceObjectInSubitemsAtIndex:(NSUInteger)idx withObject:(SubItem *)value;
- (void)replaceSubitemsAtIndexes:(NSIndexSet *)indexes withSubitems:(NSArray *)values;
- (void)addSubitemsObject:(SubItem *)value;
- (void)removeSubitemsObject:(SubItem *)value;
- (void)addSubitems:(NSOrderedSet *)values;
- (void)removeSubitems:(NSOrderedSet *)values;

@end

这是内容(自动生成)Item.m:

#import "Item.h"
#import "SubItem.h"

@implementation Item

@dynamic name;
@dynamic subitems;

@end

正如你所看到的,班级Item提供了一种称为addSubitemsObject:。不幸的是,当尝试以这种方式使用它时:

Item *item = [NSEntityDescription insertNewObjectForEntityForName:@"Item" inManagedObjectContext:self.managedObjectContext];
item.name = @"FirstItem";

SubItem *subItem = [NSEntityDescription insertNewObjectForEntityForName:@"SubItem" inManagedObjectContext:self.managedObjectContext];

[item addSubitemsObject:subItem];

出现此错误:

2011-09-12 10:28:45.236 Test[2002:707] *** -[NSSet intersectsSet:]: set argument is not an NSSet

你能帮助我吗?

Update:

在我提交错误报告仅 1,787 天后,今天(2016 年 8 月 1 日)Apple 给我写了这样的信息:“请使用最新的 iOS 10 Beta 版本验证此问题,并使用结果更新 bugreport.apple.com 上的错误报告。”。希望这是正确的时间:)


我使用您的数据模型和我自己的不同名称的数据模型复制了您的设置。在这两种情况下我都遇到了相同的错误。

看起来像是 Apple 自动生成的代码中的一个错误。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NSOrderedSet 生成的访问器中抛出异常 的相关文章

随机推荐