У меня есть NSTableView, который заполняется через поддерживаемый CoreData NSArrayController. Пользователи могут редактировать любое поле по своему выбору в NSTableView. Когда они выбирают измененные строки и нажимают кнопку, данные отправляются стороннему веб-сервису. При условии, что веб-сервис принимает обновленные значения, я хочу зафиксировать эти значения в моем постоянном хранилище. Однако если веб-служба возвращает ошибку (или просто не может вернуться), я хочу, чтобы отредактированные поля вернулись к своим исходным значениям.
Чтобы усложнить ситуацию, у меня есть ряд других редактируемых элементов управления, поддерживаемых CoreData, которым не нужно прибегать к такому поведению.
Я полагаю, что решение этой проблемы заключается в создании вторичного контекста управляемого объекта, который я бы использовал только для значений, отредактированных в этом конкретном NSTableView. Но я не совсем понимаю, как два МОК будут взаимодействовать друг с другом.
Как лучше всего решить эту проблему?