Ty cambiando questa riga:
Property(t => t.Id).HasColumnName("Id");
...a questo:
Property(t => t.Id).HasColumnName("ID"); // Upper case ID.
Per impostazione predefinita, i nomi delle colonne di Oracle sono in maiuscolo. E quando EF genera i nomi racchiusi tra virgolette, devi assicurarti di inserire correttamente le maiuscole.
Se vuoi davvero continuare a usare "Id"
, allora devi trovare un modo per fare in modo che EF non metta le virgolette intorno a Id
in modo che il controllo del nome non faccia distinzione tra maiuscole e minuscole (non so come farlo).
Oppure, devi rinominare la colonna in Oracle in modo che sia esattamente Id
.
alter table tbluser rename column id to "Id";
Ma in realtà, penso che dovresti semplicemente cambiare la tua stringa in "ID"
e falla finita.