私の質問に答えてくれてありがとう。貴重なフィードバックと質問への回答が得られると確信しています。以下のコードを見つけてください。これはサーバーにデータを保存する方法で、
-(NSMutableString *) saveChanges
{
NSMutableString *changes = [[NSMutableString alloc] init];
NSString *completeXml = [[NSString alloc]init];
for (NSString *key in objectToModify)
{
BaseModel *orig = [savedOriginalObject objectForKey:key];
BaseModel *new = [objectToModify objectForKey:key];
BaseModel *nested = Nil;
// BaseModel was added
if (orig == nil)
{
nested = [ModelReferences referenceNested:new];
nested.EntityState = [[EntityState alloc] initWithIntValue:Added];
NSMutableString *newXml = [self createObjectToXML:nested];
completeXml = [completeXml stringByAppendingString:newXml];
}
// BaseModel might be modified
else {
BaseModel *newNested = [ModelReferences referenceNested:new];
BaseModel *origNested = [ModelReferences referenceNested:orig];
NSMutableString *newXml = [self createObjectToXML:newNested];
NSMutableString *origXml = [self createObjectToXML:origNested];
completeXml = [completeXml stringByAppendingString:newXml];
if (![newXml isEqualToString:origXml])
{
nested = newNested;
nested.EntityState = [[EntityState alloc] initWithIntValue:Modified];
}
}
if (nested != Nil)
[changes appendString:[self createObjectToXML:nested]];
}
//refreshes both dictionaries (objectToModify and savedOriginalObject)
[self refreshSavedOriginalObject:completeXml];
if ([changes length] > 0)
return changes;
else
return Nil;
}
変更を加えるたびに保存されますが、新しいデータまたはオブジェクトを追加したいときはサーバーに保存されません。たとえば、NSMutableDictionary
保存されていないオブジェクトを追加した後、にオブジェクトを追加したかった。コーディングに関する詳細情報を提供する必要がある場合はお知らせください。