Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 核心数据-实现自定义对一关系_Objective C_Core Data - Fatal编程技术网

Objective c 核心数据-实现自定义对一关系

Objective c 核心数据-实现自定义对一关系,objective-c,core-data,Objective C,Core Data,我不确定这是否是一个愚蠢的问题: 我有一个托管对象A,托管对象A与表B有多对一关系 我通过如下操作将关系A设置为B Aobject.Bobject=acopyOfB; - (void) setBObject:(BObject*)theValue { [self willChangeValueForKey:@"bObject"]; [self setPrimitiveBObject:theValue]; [self didChangeValueForKey:@"bObject"];

我不确定这是否是一个愚蠢的问题:

我有一个托管对象A,托管对象A与表B有多对一关系

我通过如下操作将关系A设置为B

 Aobject.Bobject=acopyOfB;
- (void) setBObject:(BObject*)theValue {
  [self willChangeValueForKey:@"bObject"];
  [self setPrimitiveBObject:theValue];
  [self didChangeValueForKey:@"bObject"];

  // Do whatever else you need to do here
}
这很好

我想为这种关系编写一个自定义setter。这样我就可以根据B设置的值在A中设置一些只读属性

所以我想填补这个空白:

    -(void) setBobject:(Bobject)theValue{


  'the gap'

  }

我很高兴能够设置自定义值,但在核心数据中找不到设置关系的正确语法。

您需要执行以下操作

 Aobject.Bobject=acopyOfB;
- (void) setBObject:(BObject*)theValue {
  [self willChangeValueForKey:@"bObject"];
  [self setPrimitiveBObject:theValue];
  [self didChangeValueForKey:@"bObject"];

  // Do whatever else you need to do here
}
为了避免编译器警告,可以在
@implementation
指令之前声明以下内容(但在
.m
文件中):