Я переключился на использование Oracle .ManagedDataAccess.Client и вместо этого установил Oracle .ManagedDataAccess через Nuget. Вот конфигурация app.config:
<configSections>
<section name="oracle.manageddataaccess.client" type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.122.18.3, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
</configSections>
<dataConfiguration>
<providerMappings>
<add name="Oracle.ManagedDataAccess.Client" databaseType="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.122.18.3, Culture=neutral, PublicKeyToken=89b483f429c47342"/>
</providerMappings>
</dataConfiguration>
<connectionStrings>
<add name="Oracle" connectionString="Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL)));User Id=user;Password=pass;Integrated Security=no"
providerName="Oracle.ManagedDataAccess.Client" />
</connectionStrings>
Вот код C#:
DbProviderFactory providerFactory = DbProviderFactories.GetFactory("Oracle.ManagedDataAccess.Client");
Database database = new Microsoft.Practices.EnterpriseLibrary.Data.GenericDatabase("Oracle", providerFactory);
OracleCommand commandObj = null;
using (commandObj = (OracleCommand)database.GetStoredProcCommand(spName))
{
commandObj.CommandType = CommandType.StoredProcedure;
}
Я получил ошибку приведения, но теперь я застрял в строке подключения, как это терпит неудачу с ошибкой: "Строка соединения не правильно сформирована"