Oracle
 sql >> Database >  >> RDS >> Oracle

EntityFramework Code First Oracle

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.