Установка Oracle.ManagedDataAccess TNS_ADMIN по переменной среды - PullRequest
0 голосов
/ 25 сентября 2019

Я пытаюсь настроить свое решение, использующее библиотеку Oracle.ManagedDataAccess, для использования имен TNS следующим образом:

<oracle.manageddataaccess.client>
    <version number="*">
      <settings>
        <setting name="TNS_ADMIN" value="C:\oracle\TNS" /> 
      </settings>
    </version>
  </oracle.manageddataaccess.client>
</configuration>

Можно установить значение пути TNS_ADMIN из переменных среды во время выполнения с помощьюКод?

Спасибо.

Ответы [ 2 ]

0 голосов
/ 26 сентября 2019

Просто удалите настройки из файла конфигурации .NET.Управляемый драйвер ODP.NET автоматически использует текущее значение из параметра среды TNS_ADMIN.

Обратите внимание, что это противоречит документации Oracle, но все равно работает.См. Также Определение местоположения соответствующего файла tnsnames.ora

0 голосов
/ 26 сентября 2019

Мы сделали что-то похожее на вашу проблему.Вот мое решение:

 internal static OracleDatabase ServerConnection()
        {
            try
            {
                string connectionString = TNSORA.TnsNames();

                OracleConnection connection = new OracleConnection(connectionString);
                OracleDatabase oracleDatabase = new OracleDatabase(connection);
                return oracleDatabase;
            }
            catch {return null;}

        }

internal static string TnsNames()
        {
//TODO get your TNS from your environment variable, if you have more you have to select by code which is the correct one
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...