Entity Framework генерирует short вместо int
Мы используем Entity Framework database-first для нашей базы данных Oracle.
По какой-то причине Number(5)
становится Int16
- short
Максимальное значение Number(5)
равно 99999
Max Int16
значение равно 32767
Проблема... есть ли способ поручить картографу перевести Number(5)
в int32
?
2 ответа:
Решил ее, добавил Это в сеть.конфигурация:
<oracle.dataaccess.client> <settings> <add name="int16" value="edmmapping number(4,0)" /> <add name="int32" value="edmmapping number(9,0)" /> </settings> </oracle.dataaccess.client>
Воссоздал модель с помощью файла
*.edmx
и...Теперь
Я надеюсь, что это поможет кому-то еще в будущем...Number(5)
- этоInt32
вместоInt16
аNumber(10)
- этоInt64
вместоInt32
Oracle с EntityFramework для меня всегда приводила к тому, что у меня был лист изменений, которые я должен был применить к своему edmx-файлу после его создания.
Помимо изменения типа данных столбца, я бы предложил вручную редактировать тип строки в файле edmx и просто помнить, что это то, что вам придется делать каждый раз, когда вы повторно генерируете