iphone - 具有 int 值的属性的值类型 Not Acceptable

标签 iphone objective-c arrays core-data nsnumber

我使用核心数据,并尝试将 WS 中的 int 值 (id) 分配给核心数据属性 (Integer 32)。该属性是一个 NSNumber,当我对其进行编码时:

        NSNumber *v = [responseMembers valueForKey:@"id"];
        newMember.idMember = v;

并且出现此错误:

2013-06-17 11:08:24.407 EPNet[2190:c07] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Unacceptable

type of value for attribute: property = "idMember"; desired type = NSNumber; given type = __NSArrayI; value = ( 1, 2, 3, 4, 10, 14, 17, 5, 6, 7, 8, 9, 11, 12, 13, 15, 16, 18, 19, 20 ).'

你能帮我吗?

最佳答案

属性 idMember 是一个 NSNumber,但由于某种原因,您的键 @"id" 的值似乎是一个数组(看起来像其中的所有 id是吗?)

编辑: responseMembers 是一个 NSMutableArray,您不应该能够请求 valueForKey。尝试这样的事情:

foreach (NSDictionary *member in responseMembers)
{
    NSNumber *v = [member valueForKey:@"id"];
    //do something with this id
}

您正在读取的 json 看起来像一个包含许多字典的数组,并且您的 id 更深一层:

[
  //first member
  {
    "content": "some entry",
    "id": 5,
    // some more attributes
  },
  //second member
  {
    "content": "some entry",
    "id": 5,
    // some more attributes
  },
  //and so on
]

关于iphone - 具有 int 值的属性的值类型 Not Acceptable ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17144104/

相关文章:

iphone - 自定义 UITableViewCellEditingStyle

ios - 重播套件 IOS 无法工作?

ios - 从 iphone 和 IOS 应用程序访问在线 Slim API

objective-c - UIImageView - 为什么添加阴影会减慢速度?

objective-c - 在 ImageView 中将数组绘制为图形

c# - 删除早于今天日期的文件

iphone - 从设置加载 UIView 变换和中心会给出不同的位置

ios - 在相机 View 中显示 UIView

c - 是否可以创建具有可变数量元素的数组?

javascript - 数组包含其他数组的值