在 Core Data 中设置数字属性时遇到问题
Posted
技术标签:
【中文标题】在 Core Data 中设置数字属性时遇到问题【英文标题】:Trouble setting number attribute in Core Data 【发布时间】:2011-05-13 18:42:48 【问题描述】:我在核心数据中有一个实体“项目”。项目有两个属性:名称和编号。 name 是一个 NSString*,number 是一个 NSNumber*。我在 Core Data 建模工具中将“整数 32”指定为数字类型。以下代码正确设置名称但不正确设置数字:
Item *item = (Item *) [NSEntityDescription insertNewObjectForEntityForName:@"Item"
inManagedObjectContext:managedObjectContext];
[item setName:@"test name"];
[item setNumber:[NSNumber numberWithInteger:123]];
Logging card.name 按预期显示“测试名称”。记录 card.number 显示一个很大的随机数。我期待 123,因为这是我传递给 numberWithInteger 的。
为什么 number 属性设置不正确?
几点说明:
我通过在建模工具中选择“项目”实体并添加一个新的“托管对象类”来创建项目类。这为我创建了属性等。【问题讨论】:
【参考方案1】:这是一个日志记录问题:
NSLog([NSString stringWithFormat:@"%d", item.number]);
需要
NSLog([NSString stringWithFormat:@"%@", item.number]);
(必须将 %d 更改为 %@)
【讨论】:
以上是关于在 Core Data 中设置数字属性时遇到问题的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Mac 应用程序中设置初始 Core Data 存储?
如何在 iOS 上的 Core Data 中设置新创建的关系?
如何在 ASP.NET Core 2.0 中设置多个身份验证方案?