太好了,我很快就要开始这项新工作,其中大部分代码都是旧版 MFC。最终目标是转换/重写为C#
.
我对 MFC 有点生疏,所以写了一些代码,这样我就可以尝试激发我的记忆。无论如何,想知道用 MFC 连接到 SS2005 数据库的最佳方法。过去通过 ODBC 的 CDatabase 是要走的路,在过去的几年里发生了变化吗?我看到您可以使用 ATL 和 ADO,但看起来有点冗长,我喜欢吗?
太好了,我很快就要开始这项新工作,其中大部分代码都是旧版 MFC。最终目标是转换/重写为C#
.
我对 MFC 有点生疏,所以写了一些代码,这样我就可以尝试激发我的记忆。无论如何,想知道用 MFC 连接到 SS2005 数据库的最佳方法。过去通过 ODBC 的 CDatabase 是要走的路,在过去的几年里发生了变化吗?我看到您可以使用 ATL 和 ADO,但看起来有点冗长,我喜欢吗?
OleDb 的 ATL 使用者模板是一个选项 - 从这里开始。ClassWizard 仍然在那里为您提供帮助,因此一开始的冗长并不是太大的障碍。不过,很快您将需要手动编码。有很多小心翼翼的操作,例如确保您的命令字符串具有完全正确的 ? 对应于访问器的 COLUMN_ENTRY 的标记。然后你可能会有一百万个 CopyToCommandFromObject 和 CopyToObjectFromCommand 方法。
这个应用程序还没有任何数据访问权限,您要添加它吗?如果是这样,我会认真考虑在单独的托管程序集中实施现代 DAL(ADO.Net,linq,如果你有幸在 2008 年)并进行一些互操作。