Я согласен с комментарием Барри, из вашего описания звучит так, как будто вы используете более одного NSManagedObjectContext
, и это определенно вызовет проблему.
Это многопоточное приложение?
Вы основали это на одном из примеров Apple?
обновление
Ссылочная целостность является наиболее вероятной причиной этой проблемы. Когда вы удаляете A, отношение к C, с точки зрения C, может быть не очищено сразу, потому что Core Data выполняет такую очистку либо в конце цикла выполнения, либо при следующем сохранении. Это означает, что если вы заглядываете в значение до того, как какое-либо из них произойдет, связь может быть там. Ты сразу смотришь на отношения или они немного задерживаются, то есть после сохранения?
обновление
В исходном вопросе вы указали, что после сохранения EntityA все еще имеет отношение к EntityB. Это опечатка? Согласно вашей модели EntityA и EntityB не имеют прямой связи. Вы можете уточнить?
или, возможно, покажите код, где вы удаляете EntityC и где вы видите, что EntityA имеет отношения с EntityB.