The question is how to install ODP.NET 2.111 and ODP.NET 4.112 in the same machine side-by-side while both point to the same database server using tnsnames.ora
I need to support a legacy system based on Oracle 11.1.0. The system is using ODP.NET 2.111 to connect to oracle. There are two clients installed at:
C:\oracle\product\11.1.0\client_1
C:\oracle\product\11.1.0\client_2
The tnsnames.ora for both is something like this:
xxxx1_SERVICE=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = xxxx2)(PORT = xxx3))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SID = xxx4)
)
)
yyyy1_SERVICE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = yyyy2 )(PORT = yyyy3))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SID = yyyy4)
)
)
kkkk1_SERVICE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = kkkkk2 )(PORT = kkkk3))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SID = kkk4)
)
)
pppp1_SERVICE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ppppp2 )(PORT = pppp3))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SID = pppp4)
)
)
oooo1_SERVICE = (DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ooooo2 )(PORT = oooo3))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = oooo4)
)
)
The system is up and running using the above settings. I need to develop a new system based on EntityFramework which requires me to use a newer version of Oracle.DataAccess.Dll (4.112).
I was wondering that how I could install the new client without hurting the functionality of the legacy system so both can work side by side:
Note: I did try to install the new ODP.NET over the previous client and was able to connect to database using the following connection string:
DATA SOURCE=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=zzzzz1)(PORT=zzzzz2)))(CONNECT_DATA=(SERVICE_NAME=zzz3_SERVICE)));User ID=\"zzzz4\";Password=\"zzzz5\";
Thats is not desirable because 1- It breaks the legacy system because it no longer can connect to Oracle due to the upgrade in ODP.NET 2- The connection string is very strange looking
I would appreciate any help,
Thanks, Aidin