Как Entity Framework согласовывает различия между double и float? - PullRequest
0 голосов
/ 05 августа 2020

Я исследую Entity Framework для использования в проекте с C# и SQL Server. В качестве инструмента ORM задача Entity Framework - M ap между уровнем базы данных R и моими объектами C# O . Учитывая, что типы данных C# могут значительно отличаться от типов данных SQL сервера, мне кажется довольно важным знать подробности этого сопоставления, но мне не хватает документации. Панель «Сведения о сопоставлении» мало что мне говорит. 1011 * float тип данных. Double может содержать 3 значения, которые не поддерживаются float: NaN, PositiveInfinity и NegativeInfinity. Поплавок может содержать Null, что не поддерживается double. Как Entity Framework согласовывает эти различия?

Edit:

Судя по комментариям, я думаю, что мой вопрос неправильно понимают. Я просто спрашиваю, что происходит, когда вы используете Entity Framework для чтения или записи между типом данных C# и типом данных SQL Server, которые не имеют полной эквивалентности. В частности, что произойдет, если вы попытаетесь прочитать null в double или записать double.NaN, double.PositiveInfinity или double.NegativeInfinity в float? Вы получаете сообщение об ошибке? Есть ли неявный перевод? Есть ли какой-нибудь общий способ справиться с этим типом несоответствия? И где это все задокументировано?

...