Hi,
I'm working on migrating an application from .NET Core 3.1 to .NET 6. This project previously used to following nuget packages without any issue:
* Microsoft.EntityFrameworkCore 5.0.4
* Devart.Data.Oracle.EFCore 9.14.1228
I have now updated those packages to 7.0.15 and 10.2.0.7 respectivly. Our Oracle database is version 19.
I have attached a small sample project which reproduces te issue for us. It adds an entity to the db context and then does SaveChangesAsync. It also contains the creation script for one of our tables, which I used for this sample project.
Running te program as is, I get an System.InvalidOperationException with the message: "The property 'AggregateEvent.Id' has a temporary value while attempting to change the entity's state to 'Unchanged'. Either set a permanent value explicitly, or ensure that the database is configured to generate values for this property."
The database is configured to generate the values, so this can't be the issue. (see object BBR2_AGGREGATE_EVENT_BI_TR_1 in script.sql from the sample project)
If I try the other option given by the exception and set the value explicity, no data gets written to the database at all. But the state in the db context gets set to unchaged. This also applies to updates, not just inserts. I have not tested deletes.
Running the same code with Oracle.EntityFrameworkCore for the provider does not cause these problems.
Thanks for your help.