tags:

views:

153

answers:

2

Hi, I'm building a small .NET Windows Forms application that talks to an Oracle database. I understand that I can use System.Data.OracleClient.dll to talk to Oracle, but it won't work without the Oracle Client installed. The Oracle Client is huge, is there any way I distribute my app (say in a zip file) without it being gigantic?

i.e. for System.Data.SqlClient.dll - distribution is easy, the dll is all you need. Does something that easy exist for Oracle too?

Additionally, I'm hoping to find an option that doesn't cost $$$ to redistribute.

Thanks!

+1  A: 

If you take a look at the page on MSDN for this namespace:
http://msdn.microsoft.com/en-us/library/system.data.oracleclient.aspx

You'll see a little ad/comment:

The DataDirect Oracle ADO.NET Provider provides superior connectivity to Oracle 8i thru 11gR1 free from Oracle client libraries (no Oracle Client or Instant Client), with superior performance, scabability, functionality all with 100% managed code.

Available here: http://www.datadirect.com/products/net/index.ssp

Looks like the implementation from Microsoft requires the Oracle Client, but that 3rd paty implementation does not :-)

Joel Martinez
True, but I guess what I didn't say in my question (which I will now edit) was I'm really looking for a free option. Oracle Client is free (though a pain) and DataDirect's implementation is not. I understand that you get what you pay for, but I'm hoping for the best of both worlds.
Mike
+2  A: 

You probably want to use the Oracle Instant Client. This is a small set of DLLs (probably half a dozen between the Basic package and the ODAC supplement) that you can ship with your application and install as part of your application's installation process. No Oracle Home is required, you just need to do a couple of setup steps during the installation. The Instant Client is also free. From the Instant Client FAQ

What does Instant Client cost? Instant Client is FREE for anyone to use in a development or production environment. However, customers can only call Oracle Support if they already have a standard support contract.

Justin Cave