TNS: не удалось разрешить идентификатор соединения TNS: не удалось разрешить идентификатор соединения - PullRequest
0 голосов
/ 21 декабря 2010

Я создал набор данных и могу просматривать данные с помощью адаптеров таблиц. Но когда я запускаю программу, OracleConnection, инициализированный той же строкой соединения, выдает TNS: не удалось разрешить идентификатор соединения! Почему это работает в дизайнере, но не работает, когда я запускаю его?

Вот что у меня есть:

MYTNS =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.220.90)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = MYTNS )
    )
  )

Ответы [ 2 ]

3 голосов
/ 23 декабря 2010

Похоже, что ваша проблема уже решена, но я решил добавить это на случай, если кто-то еще появится в будущем.

У меня раньше была такая же проблема, и я использовал SysInternals Process Monitor, чтобы увидеть, что мое приложение пытается получить файл tnsnames из более старой версии установки Oracle на моем компьютере.

http://technet.microsoft.com/en-us/sysinternals/bb896645

2 голосов
/ 29 декабря 2010

Спасибо, ребята за ваш вклад.Это помогло мне в целом понять, как это работает.Но, похоже, проблема в переменной окружения "path" и machine.config.При запуске конструктора он считывает информацию из реестра и находит все необходимые библиотеки DLL, но во время выполнения использует путь.Итак, вы просто указываете свой путь, который указывает на домашний интерфейс ORA.
Манипулирование путем является хорошо известным рецептом, однако прежде чем вы получите более глубокое понимание того, как работает поставщик ora .NET, вы в конечном итоге попробуете все, чтобездумно знать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...