Suggerimenti per la gestione di input/output
L'uso o meno di operazioni di I/O basate su file dipende dalla modalità di risposta alle domande nell'albero delle decisioni seguente:
I dati primari nell'applicazione risiedono in un file del disco
Sì, i dati primari si trovano in un file del disco:
L'applicazione legge l'intero file in memoria in File Open e scrive l'intero file su disco in File Save
Sì: questo è il caso del documento MFC predefinito. Usare
CDocument
la serializzazione.No: questo è in genere il caso dell'aggiornamento basato sulle transazioni del file. Il file viene aggiornato in base alla transazione e non è necessaria
CDocument
la serializzazione.
No, i dati primari non si trovano in un file su disco:
I dati si trovano in un'origine dati ODBC
Sì, i dati si trovano in un'origine dati ODBC:
Usare il supporto del database MFC. L'implementazione MFC standard per questo caso include un
CDatabase
oggetto , come illustrato nell'articolo MFC: Uso di classi di database con documenti e viste. L'applicazione potrebbe anche leggere e scrivere un file ausiliario, lo scopo della procedura guidata dell'applicazione "sia una visualizzazione del database che un supporto file". In questo caso, si userà la serializzazione per il file ausiliario.No, i dati non si trovano in un'origine dati ODBC.
Esempi di questo caso: i dati si trovano in un DBMS non ODBC; i dati vengono letti tramite un altro meccanismo, ad esempio OLE o DDE.
In questi casi, non si userà la serializzazione e l'applicazione non avrà voci di menu Apri e Salva. È comunque consigliabile usare come
CDocument
home base, proprio come un'applicazione ODBC MFC usa il documento per archiviareCRecordset
gli oggetti. Ma non si userà la serializzazione predefinita di File Open/Save del framework.
Per supportare i comandi Apri, Salva e Salva con nome nel menu File, il framework fornisce la serializzazione dei documenti. La serializzazione legge e scrive i dati, inclusi gli oggetti derivati dalla classe CObject
, nell'archiviazione permanente, in genere un file su disco. La serializzazione è facile da usare e soddisfa molte delle proprie esigenze, ma può risultare inappropriata in molte applicazioni di accesso ai dati. Le applicazioni di accesso ai dati in genere aggiornano i dati in base alle transazioni. Aggiornano i record interessati dalla transazione anziché leggere e scrivere un intero file di dati contemporaneamente.
Per informazioni sulla serializzazione, vedere Serializzazione.
Vedi anche
Serializzazione: serializzazione e input/output del database