0

我总是让我的核心数据实体使用 NSManagedObject 子类。

在这些类中,我总是有这样的方法

+ (Entity *)newItemWithName:(NSString *)name InManagedObjectContext:(NSManagedObjectContext *)context {

// bla bla bla

在这些方法中,您最终会发现类似

anItem = [NSEntityDescription insertNewObjectForEntityForName:@"Entity" inManagedObjectContext:context];
anItem.name = name;

我的问题是这个@“Entity”。

有没有办法从这些方法中引用实体的名称,而不必每次都键入实体名称并最大限度地减少错字/错误的机会?或者换句话说,还有其他东西可以放在那里以自行发现实体的名称?

谢谢。

4

1 回答 1

2

你可以使用NSStringFromClass([self class]).

但是,这也很脆弱,因为您可能会更改 IB 中的实现类名称。

于 2013-09-22T06:13:25.020 回答