Recomendações para tratamento de entrada/saída
Se você usar e/S baseado em arquivo ou não depende de como você responder às perguntas na árvore de decisão a seguir:
Os dados primários em seu aplicativo reside em um arquivo de disco?
Sim, os dados primários residem em um arquivo de disco:
O aplicativo ler o arquivo inteiro na memória no arquivo abrir e gravar todo o arquivo em disco no arquivo salvar?
Sim: Este é o caso de documento padrão MFC.Use CDocument serialização.
Não: Isso normalmente é o caso de atualização baseada em transações do arquivo.Atualizar o arquivo em uma base por transação e não precisar CDocument serialização.
Não, os dados primários não residam em um arquivo de disco:
Os dados reside em uma fonte de dados ODBC?
Sim, os dados residem em uma fonte de dados ODBC:
Use o suporte de banco de dados do MFC.Inclui a implementação do MFC padrão para este caso um CDocument objeto que armazena um CDatabase de objeto, como discutido no artigo o que é o modelo de programação de banco de dados MFC?.O aplicativo também pode ler e gravar um arquivo auxiliar — o objetivo do Assistente de aplicativo "um modo de exibição de banco de dados e o arquivo de suportam" opção.Nesse caso, você usaria serialização para o arquivo auxiliar.
Não, os dados não residam em uma fonte de dados ODBC.
Exemplos de caso: os dados residem em um não - ODBC DBMS; os dados são lidos através de outro mecanismo, como, por exemplo, OLE ou DDE.
Em tais casos, você não usa a serialização e seu aplicativo não tiver aberto e salvar itens de menu.Você ainda poderá usar uma CDocument como uma base inicial, assim como ODBC MFC aplicativo usa o documento para armazenar CRecordset objetos.Mas você não usar a serialização de documento da estrutura padrão arquivo abrir/salvar.
Suporte a abrir, salvar e salvar como comandos no menu Arquivo, o framework fornece a serialização de documento.Serialização lê e grava os dados, incluindo objetos derivados da classe CObject, permanente para armazenamento, normalmente um arquivo de disco.Serialização é fácil de usar e serve muitas das suas necessidades, mas podem ser inadequado em muitos aplicativos de acesso a dados.Aplicativos de acesso a dados normalmente atualizam dados em uma base por transação.Eles atualizarem os registros afetados pela transação em vez de ler e gravar um arquivo de dados toda vez.
Para obter informações sobre a serialização, consulte serialização.
Consulte também
Conceitos
Serialização: Serialização vs. Banco de dados de entrada/saída