Změníte tento řádek:
Property(t => t.Id).HasColumnName("Id");
...na toto:
Property(t => t.Id).HasColumnName("ID"); // Upper case ID.
Ve výchozím nastavení jsou názvy sloupců Oracle velkými písmeny. A když EF generuje jména zabalená do dvojitých uvozovek, musíte se ujistit, že správně používáte malá a velká písmena.
Pokud opravdu chcete nadále používat "Id"
, pak musíte buď najít způsob, jak zajistit, aby EF neuváděl dvojité uvozovky kolem Id
aby se při kontrole názvu nerozlišovala malá a velká písmena (nevím, jak to udělat).
Nebo musíte sloupec v Oracle přejmenovat tak, aby byl přesně Id
.
alter table tbluser rename column id to "Id";
Ale opravdu si myslím, že byste měli změnit svůj řetězec na "ID"
a hotovo.