Parece que o driver gerenciado não consegue resolver os nomes TNS. Verifique se sua configuração está correta (consulte Documentação ).
Por exemplo:
<oracle.manageddataaccess.client>
...
<settings>
...
<setting name="TNS_ADMIN" value="C:\path\where\TNSNAMESFILE\is"/>
...
</settings>
...
</oracle.manageddataaccess.client>
Além disso, você pode precisar configurar a fábrica do provedor se ainda não estiver definida em
machine.config
:<system.data>
<DbProviderFactories>
<remove invariant="Oracle.ManagedDataAccess.Client" />
<add name="ODP.NET, Managed Driver"
invariant="Oracle.ManagedDataAccess.Client"
description="Oracle Data Provider for .NET, Managed Driver"
type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.121.1.0, Culture=neutral, PublicKeyToken=89b483f429c47342" />
</DbProviderFactories>
</system.data>
Como um aparte, notei que você está mencionando Oracle.ManagedDataAccessDTC como o driver gerenciado. Observe que Oracle.ManagedDataAccessDTC é, na verdade, o componente que fornece suporte para transações distribuídas, enquanto o assembly do driver principal é chamado de "Oracle.ManagedDataAccess".