2012-12-09 45 views
0

直升機的核心數據設定值,我還是新手核心數據,突然卡在這些簡單的代碼:一個NSDate的type屬性

Purchased* newItem=[NSEntityDescription insertNewObjectForEntityForName:@"Purchased" inManagedObjectContext:self.managedObjectContext]; 
[newItem setPurchasedDate:[NSDate date]]; 
[newItem setLastOpen:[NSDate date]]; 
if ([self.managedObjectContext save:&error]) 
{ 
    //do something if the save success 
} 

好了,從上面的代碼我有一個「NSInvalidArgumentException ',原因:' - [已購買setPurchasedDate:]:無法識別的選擇器已發送到實例。正如我們所看到的例外是在

[newItem setPurchasedDate:[NSDate date]]; 

指並且是正確的。當我嘗試逐步調試此代碼時,程序僅在調用此消息時中止。

我不知道爲什麼,因爲我的模型和我的購買類沒有錯,我已經檢查了它一百次。我試圖通過覆蓋 - (void)awakeFromInsert()方法來更改設置值的位置,並引發相同的異常。有人有建議嗎?以前感謝。

回答

0

檢查:

你的管理對象模型的Purchased實體都有Date類型被稱爲purchasedDate的屬性,另外一個叫lastOpen

在你Purchased.h文件你有

@property (nonatomic, strong) NSDate *purchasedDate; 
@property (nonatomic, strong) NSDate *lastOpen; 

在你Purchased.m文件你有

@dynamic purchasedDate; 
@dynamic lastOpen; 

確保您在其中創建新實例文件中#import "Purchased.h"

+0

對我很恥辱,我在我的模特哈哈哈寫了purchaseDate。 Thx爲答案。 –