This is more problem with Oracle approaches, but for Manged Driver they use different approach on where driver finds tnsnames.ora file:
http://stackoverflow.com/questions/28280883/determining-locatation-of-relevant-tnsnames-ora-file
For example, for ODP.NET Managed Driver (Oracle.ManagedDataAccess) beta version, I found this order at Oracle Managed and TNS Names :
- data source alias in the 'dataSources' section under <oracle.manageddataaccess.client> section in the .NET config file (i.e. machine.config, web.config, user.config).
- data source alias in the tnsnames.ora file at the location specified by TNS_ADMIN in the .NET config file.
- data source alias in the tnsnames.ora file present in the same directory as the .exe.
- data source alias in the tnsnames.ora file present at %TNS_ADMIN% (where %TNS_ADMIN% is an environment variable setting).
- data source alias in the tnsnames.ora file present at %ORACLE_HOME%\network\admin (where %ORACLE_HOME% is an environment variable setting).
First three options are not covered by ResolveRootTnsNamesFiles().
Also I do not see how it is possible to get these settings because of if you read this section <oracle.manageddataaccess.client> through full framework System.Configuration.ConfigurationManager.GetSection() method - you get nothing usable.
This is more problem with Oracle approaches, but for Manged Driver they use different approach on where driver finds tnsnames.ora file:
http://stackoverflow.com/questions/28280883/determining-locatation-of-relevant-tnsnames-ora-file
For example, for ODP.NET Managed Driver (Oracle.ManagedDataAccess) beta version, I found this order at Oracle Managed and TNS Names :
First three options are not covered by ResolveRootTnsNamesFiles().
Also I do not see how it is possible to get these settings because of if you read this section <oracle.manageddataaccess.client> through full framework System.Configuration.ConfigurationManager.GetSection() method - you get nothing usable.