-1

哪种方式最容易学习/实现,以便为使用 ADO 到 SOAP 服务的 vb6 遗留应用程序提供访问。目前我知道的替代方案是 ODBC、OLE DB 或 ADO 提供程序(这甚至不是 OLE DB 提供程序吗?)。我基本上不知道实施任何类型的此类提供程序。我通常在编程 C#。我有基本的 C/C++ 知识,但如果我可以在 C# 中实现提供程序,那就太好了。

所以我的问题:

  1. 有没有其他方法可以将 SOAP 服务中的数据提供给我的 vb6 应用程序,而无需对其进行太多修改。也许已经存在某种 ODBC SOAP 驱动程序?
  2. 我查找了一些有关如何实现 ODBC 驱动程序的基本信息。据我了解,唯一的方法是 C/C++ DLL。如果我想使用 C#,我将不得不转发来自驱动程序 dll 的调用,因为 C# 无法像本机 dll 一样导出符号;它是否正确?
  3. ODBC 和 OLE DB 都没有轻量级的方式来实现驱动程序/提供程序。我看到 OLE DB 存在一些简化。我认为它被称为 OLS 或 OSL 之类的东西,但该页面声明支持将在未来版本的 windows 中结束。任何线索可能与这相关或相关程度如何?
  4. 在这种情况下,我应该更喜欢 ODBC 而不是 OLE DB,反之亦然。我知道 OLE DB 似乎有点像 ODBC 的继承者,实现提供者似乎相当复杂。
  5. 是否存在类似 ADO 提供程序的东西?我怎么能实现这个?或者这只是 OLE DB?
4

1 回答 1

1

显而易见的答案是升级您的 Visual Basic 6 应用程序,但我知道这并不总是可行的。如果您正在寻求快速而肮脏的解决方案,那么您仍在使用 VB6 的事实表明您可能是这样,那么您可以横向思考。

完成工作的一种快速、肮脏但简单的方法是让您在 C# 中编写一个 Windows 服务或类似的服务,从您的 SOAP 源中提取数据并将其插入到中间数据库中。然后,就 Visual Basic 应用程序而言,它只是像往常一样访问数据库,通过 ODBC 或任何其他方式。

不是最优雅的解决方案,而是一个很好的现实世界解决方案?

于 2013-01-23T14:00:47.687 回答