1

私はこのコードを持っています:

NSError *error; // NSMigrationManager hates it if you don't provide an error pointer
BOOL result = [manager migrateStoreFromURL:sStoreURL
                                      type:NSSQLiteStoreType
                                   options:nil
                          withMappingModel:mappingModel
                          toDestinationURL:dStoreURL
                           destinationType:NSBinaryStoreType
                        destinationOptions:nil
                                     error:&error];

驚いたことに、NOを返し、errorポインタをnilのままにする/設定することがあります。これを引き起こす原因は何ですか?

4

1 に答える 1

2

これは、ポインタNOを設定せずに戻るカスタム移行ポリシーがある場合に発生します。error例えば

- (BOOL)createDestinationInstancesForSourceInstance:(NSManagedObject *)sInstance entityMapping:(NSEntityMapping *)mapping manager:(SVMigrationManager *)manager error:(NSError **)error;
{
    return NO;
}

コードを注意深くチェックして、これが発生する可能性のある状況を見つけてください。

于 2011-03-04T11:34:20.780 に答える