Ty cambiando esta línea:
Property(t => t.Id).HasColumnName("Id");
...a esto:
Property(t => t.Id).HasColumnName("ID"); // Upper case ID.
De forma predeterminada, los nombres de las columnas de Oracle están en mayúsculas. Y cuando EF genera los nombres entre comillas dobles, debe asegurarse de escribir correctamente las mayúsculas y minúsculas.
Si realmente quieres seguir usando "Id"
, entonces debe encontrar una manera de que EF no coloque las comillas dobles alrededor de Id
para que la verificación del nombre no distinga entre mayúsculas y minúsculas (no sé cómo hacerlo).
O bien, debe cambiar el nombre de la columna en Oracle para que sea exactamente Id
.
alter table tbluser rename column id to "Id";
Pero realmente, creo que deberías cambiar tu cadena a "ID"
y listo.