У меня небольшое приложение asp.net core 2.2, которое должно получить доступ к базе данных oracle;Я использую NuGet Oracle.ManagedDataAccess.Core (2.18.6), и он просто работает на моей машине.
При развертывании его на сервере Windows с IIS я помещаю файл tnsnames.ora
в приложениякаталог и снова он просто работает.
Теперь я хочу использовать общий tnsnames.ora
файл.Я пробовал web.config
, как показано ниже (ответ от StackOverflow / Google отвечает на аналогичные вопросы).
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="oracle.manageddataaccess.client" type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
</configSections>
<!-- skipping app stuff -->
<oracle.manageddataaccess.client>
<version number="*">
<settings>
<setting name="tns_admin" value="F:\path\to\tnsadmin\folder" />
</settings>
</version>
</oracle.manageddataaccess.client>
</configuration>
К сожалению, это не работает (а поскольку основная версия Oracle.ManagedDataAccess.dll
не имееткласс ODPMSectionHandler
это не является большим сюрпризом).
Итак, есть ли способ получить общий файл tnsnames.ora
с ядром odp.net?
(PS, я думаю, мынужен тег odp.net-core
)
ОБНОВЛЕНИЕ
Необходимо убедиться, что w3wp.exe
действительно может получить доступ к файлам.
Установка системной переменной среды TNS_ADMIN
является возможным решением.В данном конкретном случае этого будет достаточно, но мне все еще интересно, как настроить его через web.config
.