Windows窗体应用程序与Oracle一起工作而无需安装Oracle客户端

时间:2015-06-09 12:09:16

标签: c# winforms oracle visual-studio-2010

我正在使用VS2010并希望在客户端PC上部署用C#开发的Windows表单应用程序。我有专用的Oracle 10g服务器来处理数据库。 有没有办法在不在客户端PC上安装Oracle客户端的情况下运行Windows窗体应用程序来使用Oracle?

3 个答案:

答案 0 :(得分:1)

您可以使用oracle instant client nuget package ...

从包裹页面:

  

Instant Client允许您在不安装的情况下运行应用程序   标准Oracle客户端或具有ORACLE_HOME。 OCI,OCCI,Pro C,   ODBC和JDBC应用程序在使用时无需修改即可工作   磁盘空间显着减少。甚至可以使用SQL Plus   使用Instant Client。没有重新编译,没有麻烦。

答案 1 :(得分:0)

您可以使用ODP.NET托管提供商,您可以从此处下载:ODP.NET_Managed121020.zip

您只需在应用程序中提供 Oracle.ManagedDataAccess.dll 的副本即可。

答案 2 :(得分:0)

Oracle不允许重新分发其客户端驱动程序(除非您是Oracle业务合作伙伴,即您购买了一些开发许可证)。

所以你可以:

  • 使用Microsoft的ODBC驱动程序(Windows安装的一部分)。但是这只支持数据库类型的子集(没有TIMESTAMP,没有CLOB)
  • 使用Devart的替代数据库驱动程序(我从未使用过它们)
  • 要求用户在他们的PC上解压缩Oracle即时客户端驱动程序(这是非常简单的任务)。

我担心没有其他解决方案。在我看来,这个问题与许可证有关,因为从技术上讲,在您的应用程序包中嵌入单个.dll是没有问题的。