Share via

Migrating from Oracle.DataAccess (unmanaged) to Oracle 23ai – Need Confirmation on Version 23.26.100

Aman Agrahari 180 Reputation points
2026-02-12T10:17:40.3733333+00:00

Dear Team,

I am currently using unmanaged Oracle.DataAccess.dll with an Oracle 19c database in my .NET Framework 4.7 application. I now want to migrate the application to Oracle Database 23ai, and I would like guidance on how to upgrade my data access layer accordingly.

Specifically, I would like to know:

  1. What is the recommended approach to migrate from Oracle.DataAccess.dll (unmanaged ODAC) to a supported provider for Oracle 23ai?
  2. Is there a NuGet package available for this migration? I noticed the Oracle.ManagedDataAccess NuGet package (version 23.26.100), which targets .NET Framework 4.7.2 and above.
  3. I need confirmation on whether the Oracle.ManagedDataAccess NuGet package is meant exclusively for Oracle 23ai, or if it is a general ODP.NET managed provider that also supports connecting to earlier Oracle versions such as 19c.

Thanks & Regards,
Aman Agrahari

Developer technologies | .NET | Other
0 comments No comments
{count} votes

2 answers

Sort by: Most helpful
  1. Surya Amrutha Vaishnavi Lanka (INFOSYS LIMITED) 1,960 Reputation points Microsoft External Staff
    2026-02-16T09:43:00.11+00:00

    Thanks for reaching out! Below are the points to solve the issue

    1. Migrating from Oracle.DataAccess.dll (Unmanaged ODAC):
      • The recommended approach is to switch to Oracle.ManagedDataAccess. This is a managed provider that does not require Oracle Client installed on your machine, making it much easier to deploy and run in environments like Azure.
    2. NuGet Package Availability:
      • Yes, there is a Oracle.ManagedDataAccess NuGet package available. The version you mentioned, 23.26.100, does target .NET Framework 4.7.2 and above, so it should work for your application since you are using .NET Framework 4.7.
    3. Compatibility with Earlier Versions:
      • The Oracle.ManagedDataAccess is designed to be a general ODP.NET managed provider. It supports not only the latest Oracle versions such as 23ai but also earlier versions like 19c. This means you can use it to connect to your existing 19c database without any issues.

    Hope that helps you with your migration! If you have any more questions or need further clarification, feel free to ask!


  2. Q&A Assist
    2026-02-12T10:17:54.17+00:00
    AI generated content. This question contains an answer created with AI from Q&A Assist. Learn more

    To migrate from Oracle.DataAccess.dll (unmanaged ODAC) to a supported provider for Oracle 23ai, you should consider using the Oracle.ManagedDataAccess library. This managed provider is designed to work with .NET applications and simplifies deployment since it does not require Oracle client software to be installed on the machine.

    1. Recommended Approach: The general approach involves replacing the unmanaged Oracle.DataAccess references in your application with the managed Oracle.ManagedDataAccess. You will need to update your code to use the classes and methods provided by the managed library, which may involve some changes in how you handle connections and commands.
    2. NuGet Package: Yes, the Oracle.ManagedDataAccess NuGet package is available, and version 23.26.100 targets .NET Framework 4.7.2 and above. You can install this package via NuGet Package Manager in Visual Studio or using the command line.
    3. Compatibility with Earlier Versions: The Oracle.ManagedDataAccess NuGet package is a general ODP.NET managed provider that supports connections to various Oracle database versions, including Oracle 19c and Oracle 23ai. It is not exclusively for Oracle 23ai, so you can use it to connect to earlier versions as well.

    Make sure to test your application thoroughly after migration to ensure compatibility and performance with the new provider.


    References:

    0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.