Sdílet prostřednictvím


Nabídka Soubor v databázových aplikacích MFC

Pokud vytvoření databázové aplikace knihovny MFC a nechcete použít serializaci, jak by měl interpretovat Open, Close, uložíte a uložit jako příkazy v nabídce Soubor?V době, kdy neexistují žádná pravidla stylu pro tuto otázku, zde je několik návrhů:

  • V nabídce Soubor příkaz Otevřít zcela vyloučit.

  • Interpretovat jako "otevřené databáze" příkazu Otevřít a zobrazit seznam zdrojů dat, které rozpozná aplikace.

  • Otevřít interpretovat jako možná "otevřít profil." Zachovat otevřít pro otevření serializovaném souboru, ale soubor použít k ukládání serializovaných dokument obsahující informace "profil", jako jsou uživatelské předvolby, včetně jeho ID přihlášení (volitelně bez hesla) a zdroj dat, který mu naposledy pracovali.

Průvodce aplikace knihovny MFC podporuje vytváření aplikace s žádné příkazy nabídky Soubor souvisejících dokumentů.Vyberte pohled na databázi bez souboru podporovat na možnost Podpory databáze stránky.

Zvláštním způsobem interpretuje příkaz nabídky soubor, musíte přepsat obslužné rutiny jeden nebo více příkazů, převážně ve své CWinApp-odvozené třídy.Například, pokud je zcela přepsat OnFileOpen (které implementuje ID_FILE_OPEN příkaz) rozumí "otevřít databázi:"

  • Nemůžete volat základní třídy verzi OnFileOpen, protože je zcela nahradit výchozí implementace v rámci příkazu.

  • Místo toho použijte zobrazíte dialogové okno zobrazení zdrojů dat obslužné rutiny.Zobrazí dialogové okno lze zobrazit pomocí volání CDatabase::OpenEx nebo CDatabase::Open s parametrem NULL.To otevře ODBC dialogové okno zobrazující všechny dostupné zdroje dat na počítači uživatele.

  • Vzhledem k tomu, že obvykle databázových aplikací bez uložení celého dokumentu, bude pravděpodobně chcete odebrat uložit a uložit jako implementace, pokud použijete serializované dokumentů k ukládání informací o profilu.V opačném případě se může implementovat příkaz Uložit jako, například "potvrzení transakce." Viz Technická poznámka: 22 pro další informace o přepsání tyto příkazy.

Viz také

Koncepty

Serializace: Serializace vs. databázový vstup/výstup