Если у вас есть float в MSSQLServer, к чему вы это сопоставляете в .NET?
Можно ли преобразовать его в Double или потерять номера?
Ответ 1
SQLServer float и С#/VB double имеют одинаковое представление. Это правильное отображение. То, что вы не хотите делать, это сопоставить SQL Server float с С#/VB float, поскольку это может привести к потере точности. SQL Server real отображается на С#/VB float.
Определения типа плавающего и реального типов T-SQL можно найти в MSDN. С# double definition можно найти на MSDN, а также float определение.
С# имеет тип float, но он также будет преобразовывать в double.
Ответ 4
Из моего воспоминания большая часть инструментов ORM отобразит его в десятичный тип, который не потеряет точность, как двойной или плавающий.
Ответ 5
Это зависит от размера поплавка SQL. Для простого "float", который эквивалентен float (53), вам нужно использовать С# double. Для float (24) или ниже С# float будет достаточно или двойной будет работать.
Ответ 6
Автоматический код, созданный Microsoft XSD, преобразует SQL-float (по умолчанию float) в С# double.
Поэтому вы можете предположить, что это не большая ошибка.
Пока вы не будете работать с float с размером по умолчанию.