转换CArchive以使用SQL数据库进行序列化的最简单方法?

时间:2008-11-09 22:38:36

标签: sql serialization mfc carchive

我有一个现有的应用程序,它使用CArchive将对象结构序列化为文件。我想知道是否可以用一些自定义类替换CArchive的用法来写入数据库,就像序列化事物一样。在我开始计算这是否可行之前,我想知道其他人是否也这样做了 - 这个问题的最佳方法是什么?我希望能够为CArchive的使用创建一个替代品,以便现有的对象结构可以简单地读/写数据库而不是序列化文件。是否像为每个类重写Serialize方法一样简单?

1 个答案:

答案 0 :(得分:0)

简短的回答:忘掉它。

更长的答案:

CArchive没有一个虚拟成员。即使它的析构函数不是虚拟的,这意味着你不应该从该类派生出来(C#程序员说密封)。

我只能考虑自定义CArchive的工作(并且不重写CDocument中的整个序列化代码):构建您的CArchive对象,方法是将指针传递给CFile派生类,该类将为您处理数据连接。

从那时起,如何通过简单地覆盖CFile的Read()和Write()来控制数据库超出了我的想象: - (