我在代码
中有类似的东西SqlFunctions.StringConvert( (double?) x.Latitude)
但它总是返回一个整数,尽管它有一个纬度值。
任何帮助?
答案 0 :(得分:3)
SqlFunctions.StringConvert(double?)
返回转换为字符串的整数。要返回十进制值,您需要提供另一个重载SqlFunctions.StringConvert(double? vaue, int length, int decimals)
,如下所示:
SqlFunctions.StringConvert( (double?) x.Latitude, 20, 5)
// If x.Latitude = 34.75, then the result will be "34.75000"
来自STR文档:
数字默认舍入为整数或小数点 参数为0。
参考文献:
SqlFunctions.StringConvert Method (Nullable)
SqlFunctions.StringConvert Method (Nullable, Nullable, Nullable)
STR (Transact-SQL)