Как вы сохраняете данные в MFC? - PullRequest
0 голосов
/ 22 декабря 2009

Я до сих пор помню, что в Delphi разработчик может просто сделать пользовательский интерфейс (текстовое поле, список ...) напрямую подключенным к базе данных, а затем, когда пользователь нажмет кнопку, просто вызвать действие публикации, тогда данные будут сохранены автоматически.

Что я хочу знать, так это то, что в MFC есть подобный механизм?Или я могу использовать GetDlgItem (...). Text, а затем использовать это значение для сохранения в базе данных?

Или любые другие предложения будут оценены.

Ответы [ 3 ]

1 голос
/ 22 декабря 2009

В VC ++ необходимо использовать Библиотека объектов данных Microsoft ActiveX (ADL typelib).

Для хранения данных вы можете выполнить следующие действия:

1.Retrive data from all controls 
2.Validate the data retrived
3.Use sql query to store the data to database. 

Вы можете использовать ODBC API , который не зависит от какой-либо системы управления базами данных.

http://msdn.microsoft.com/en-us/library/ms714562(VS.85).aspx

http://www.odbc.net/api/index.shtml

0 голосов
/ 23 декабря 2009

MFC абстракция данных в Doc / View / Frame находится в CDocument. При сохранении документа MFC запрашивает у пользователя имя файла, если файл не имеет сохраненного пути, затем создает CArchive для файла и запускает CDocument :: Serialize. Вы можете сохранить строку подключения в своем классе документов и использовать ее для сохранения данных в CDocument :: Serialize.

Если у вас есть файловая база данных, ее легче интегрировать. Переопределите CDocument :: OnNewDocument, чтобы создать новую файловую базу данных для документа, и переопределить CDocument :: OnOpenDocument для чтения из существующей базы данных. Если у вас нет файловой базы данных, вы можете подавить диалог файла с помощью переопределения CDocument :: SaveModified, которое сохраняет данные и очищает измененный флаг.

0 голосов
/ 22 декабря 2009

Чтобы быть справедливым в Delphi, это специализированные виджеты, а не обычное текстовое поле GDI и т. Д., А элементы управления с дополнительным уровнем поддержки базы данных, который связан с набором данных и таблицами.

.NET тоже имеет нечто подобное, не знаю, что такое MFC

...