Có vẻ như trình điều khiển được quản lý không thể phân giải các tên TNS. Bạn nên đảm bảo cấu hình của mình là chính xác (xem Tài liệu ).
Ví dụ:
<oracle.manageddataaccess.client>
...
<settings>
...
<setting name="TNS_ADMIN" value="C:\path\where\TNSNAMESFILE\is"/>
...
</settings>
...
</oracle.manageddataaccess.client>
Ngoài ra, bạn có thể cần phải định cấu hình nhà máy của nhà cung cấp nếu chưa được xác định trong 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>
Ngoài ra, tôi lưu ý rằng bạn đang đề cập đến Oracle.ManagedDataAccessDTC làm trình điều khiển được quản lý. Xin lưu ý rằng Oracle.ManagedDataAccessDTC thực sự là thành phần cung cấp hỗ trợ cho các giao dịch phân tán, trong khi cụm trình điều khiển chính được gọi là "Oracle.ManagedDataAccess".