Delete NSManageObject at the event tableView:commitEditingStyle:forRowAtIndexPath:
<p>I got exception when I tried to delete one NSManageObject at the event of tableView:commitEditingStyle:forRowAtIndexPath:.  Here is the part of my codes:</p>

<pre><code>- (void)tableView:(..)tableView commitEditingStyle:(..)editingStyle 
  forRowAtIndexPath:(..)indexPath {
  if (editingStyle == UITableViewCellEditingStyleDelete) {
    [managedObjectContext deleteObject:
      [fetchedResultController objectAtIndexPath:indexPath]];
     ...
  }
}
</code></pre>

<p>The exception was thrown at the line of deleteObject:(method of my local NSManagedObjectContext). This is the exception message: </p>

<p><em>uncaught exception 'NSObjectInaccessibleException', reason: 'The NSManagedObject with ID:0x3d07a30 &lt;x-coredata://0D2CC9CB-042B-496D-B3FE-5F1ED64EAB97/paymentType/p2&gt; has been invalidated.'</em></p>

<p>I tried to get entity object first and then to delete it. The entity looks OK but still the exception was at delete:</p>

<pre><code> NSManagedObject *entityToDelete = 
    [fetchedResultsController objectAtIndexPath:indexPath];
 [mangedObjectContext deleteObject:entityToDelete]; // Exception again.
</code></pre>

<p>I am not sure if the entity object retrieved from the fetchedResultsController(NSFetchedResultsController type) cannot be deleted? If so, is there any other way to get the entity object for deleting?</p>

<p>I found that in the <a href="http://developer.apple.com/iphone/library/documentation/DataManagement/Conceptual/iPhoneCoreData01/Articles/04_Adding.html#//apple_ref/doc/uid/TP40008305-CH106-SW2" rel="nofollow">Apple's Core Data Tutorial for iPhone with events example</a>, there is on NSArray to hold event entity objects. I am not sure if that's necessory to use NSArray to hold my local entity objects and then use it for deleting?</p>
