0

I'm using Devart with Oracle database 10g and Entity Framework Core 5 and I'm trying to create the models from database with Scaffold-DbContext:

dotnet ef dbcontext scaffold "User Id=proj1;Password=proj1;Data Source=proj.pr.local:1515;" Devart.Data.Oracle.EFCore -o Models -p Project1.csproj

But I get the following error:

Unable to find provider assembly 'Devart.Data.Oracle.EFCore'. Ensure the name is correct and it's referenced by the project.

I have installed Devart.Data.Oracle.EFCore 9.14.1234 using NuGet Packages.

Why do I get this error?

Thank you.

littleO
  • 33
  • 6
  • 1
    using a database (10g) that old reduces your chances of that ever working - your database is at least 16 years old – thatjeffsmith May 05 '21 at 12:39
  • 2
    looks like you missed `Entity` it should be `Devart.Data.Oracle.Entity.EFCore`. But @thatjeffsmith is absolutely correct. Oracle 10 is out-of-support for a long time (also 11.1,11.2,12.1,12.2...) You need to use currently supported LTS Oracle 19 – Sayan Malakshinov May 05 '21 at 12:43
  • One question, why EF then? `linq2db` can scaffold such database and you can start using LINQ in 5 minutes. Without ChangeTracker but with other benefits. – Svyatoslav Danyliv May 05 '21 at 13:47

1 Answers1

1

Devart.Data.Oracle.EFCore is the name of the NuGet package.

Devart.Data.Oracle.Entity.EFCore is the name of the assembly.

Refer to https://www.devart.com/dotconnect/oracle/docs/?EFCore-Database-First-NET-Core.html.

Devart
  • 119,203
  • 23
  • 166
  • 186