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

Come configurare DbContext per funzionare con Oracle ODP.Net ed EF CodeFirst?

Come ha scritto Nick nella sua risposta, il problema è correlato con le virgolette e il caso della query generata, ma non con i nomi della tabella ma con il nome dello schema:

SELECT * 
FROM "myce"."PERSONS" "Extent1"

Quindi la soluzione è molto semplice, basta mettere in maiuscolo l'ID utente e il nome dello schema:

modelBuilder.Entity<Person>().ToTable("PERSONS","MYCE");

In generale, tutto deve essere in maiuscolo:tabelle, schema e nomi dei campi. Ma è meglio annotare ogni proprietà mappata con l'attributo Colonna invece di scrivere in maiuscolo il nome della proprietà:

    [Column("FIRST_NAME")]
    public string FirstName { get; set; }

In questo modo i nomi saranno più facili da leggere sia nel database che nelle classi.