Поделиться через


Рекомендации для обработки вход-выход

, Используется ли на основе файлов ВВОДА-ВЫВОДА или не зависит от того, как вы отвечаете на вопросы в следующем дереве принятия решений.

Исходные данные в приложении находятся в файле на диске?

  • Да, исходные данные хранятся в файле на диске.

    Приложение считывает файл целиком в память при открытии файла и записывает файл целиком обратно на диск при сохранении файла?

    • Да: Это случай документов MFC значения по умолчанию.Используйте сериализацию CDocument.

    • Нет: Обычно это случай транзакция-основанного обновления файла.Необходимо обновить файл на основе в-транзакции и не требуется сериализация CDocument.

  • Нет исходные данные не хранится в файле на диске.

    Данные, находящиеся в источнике данных ODBC?

    • Да, данные находятся в источник данных ODBC.

      Используйте поддержку баз данных MFC.Стандартная реализация MFC в этом случае включает объект CDocument, который хранит объект CDatabase, как описано в статье Модель программирования базы данных MFC?.Приложение также может считывать и записывать вспомогательный файл — назначение мастера приложений «и представление базы данных, а параметр поддержки файлов».В этом случае следует использовать сериализацию для вспомогательного файла.

    • Отсутствует, данные не находится в источник данных ODBC.

      Примеры этого варианта: данные находятся в СУБД non-ODBC; данные считываются через некоторый другой механизм, как OLE или DDE.

      В таких случаях нельзя использовать сериализацию и приложение не будет иметь открытый и не сохранять пунктов меню.Можно по-прежнему использовать CDocument как домашнее base, как приложение odbc MFC использует документ для хранения объектов CRecordset.Однако нельзя использовать сериализация открытого документа или сохранения файла по умолчанию платформы.

Для поддержки открыть, сохранить и команды " сохранить как " в меню " Файл " границы обеспечивают сериализацию документов.Сериализация считывает и записывает данные, включая объекты, производные от класса CObject, в постоянном хранилище. обычно это файл на диске.Сериализации легко использовать и выполняет большую часть своего, но может быть неверно во многих приложениях доступа к данным.Приложения доступа к данным обычно обновление данных на основе в-транзакции.Они обновляют записи, затронутые транзакцией, а не на чтение и запись сразу весь файл данных.

Дополнительные сведения о сериализации см. в разделе Сериализация.

См. также

Основные понятия

Сериализация: Serialization vs. database input/output