Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Tanto si usa E/S basada en archivos como si no depende de cómo responda a las preguntas del árbol de decisión siguiente:
¿Los datos principales de la aplicación residen en un archivo de disco?
Sí, los datos principales residen en un archivo de disco:
¿La aplicación lee todo el archivo en memoria en El archivo abierto y vuelve a escribir todo el archivo en el disco en El guardado de archivos
Sí: este es el caso de documento MFC predeterminado. Use
CDocument
la serialización.No: suele ser el caso de la actualización basada en transacciones del archivo. Actualiza el archivo por transacción y no necesita
CDocument
serialización.
No, los datos principales no residen en un archivo de disco:
¿Residen los datos en un origen de datos ODBC?
Sí, los datos residen en un origen de datos ODBC:
Use la compatibilidad con la base de datos de MFC. La implementación estándar de MFC para este caso incluye un
CDatabase
objeto , como se describe en el artículo MFC: Uso de clases de base de datos con documentos y vistas. La aplicación también puede leer y escribir un archivo auxiliar, el propósito del asistente para aplicaciones "tanto una vista de base de datos como una compatibilidad con archivos". En este caso, usaría la serialización para el archivo auxiliar.No, los datos no residen en un origen de datos ODBC.
Ejemplos de este caso: los datos residen en un DBMS que no es ODBC; los datos se leen a través de algún otro mecanismo, como OLE o DDE.
En tales casos, no usará la serialización y la aplicación no tendrá elementos de menú Abrir y Guardar. Es posible que todavía quiera usar como
CDocument
base principal, al igual que una aplicación ODBC de MFC usa el documento para almacenarCRecordset
objetos. Pero no usará la serialización predeterminada de archivos abiertos o guardados del documento del marco.
Para admitir los comandos Abrir, Guardar y Guardar como en el menú Archivo, el marco proporciona serialización de documentos. La serialización lee y escribe datos, incluidos los objetos derivados de la clase CObject
, en el almacenamiento permanente, normalmente un archivo de disco. La serialización es fácil de usar y atiende muchas de sus necesidades, pero puede ser inapropiada en muchas aplicaciones de acceso a datos. Las aplicaciones de acceso a datos normalmente actualizan los datos por transacción. Actualizan los registros afectados por la transacción en lugar de leer y escribir un archivo de datos completo a la vez.
Para obtener información sobre la serialización, consulte Serialización.
Consulte también
Serialización: Serialización frente a entrada/salida de bases de datos