Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Wie konfiguriere ich DbContext für die Arbeit mit Oracle ODP.Net und EF CodeFirst?

Wie Nick in seiner Antwort schrieb, hängt das Problem mit den Anführungszeichen und der Groß-/Kleinschreibung der generierten Abfrage zusammen, aber nicht mit den Namen der Tabelle, sondern mit dem Namen des Schemas:

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

Die Lösung ist also sehr einfach, einfach die Benutzer-ID und den Schemanamen in Großbuchstaben zu schreiben:

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

Im Allgemeinen müssen alle in Großbuchstaben geschrieben werden:Tabellen, Schemas und Feldnamen. Es ist jedoch besser, jede zugeordnete Eigenschaft mit dem Column-Attribut zu kommentieren, anstatt den Eigenschaftsnamen in Großbuchstaben zu schreiben:

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

Dadurch sind die Namen sowohl in der Datenbank als auch in den Klassen leichter lesbar.