工作,我有類似的東西在代碼SqlFunctions.StringConvert不雙打
SqlFunctions.StringConvert((double?) x.Latitude)
但它總是返回一個整數,儘管它有一個緯度值。
有幫助嗎?
工作,我有類似的東西在代碼SqlFunctions.StringConvert不雙打
SqlFunctions.StringConvert((double?) x.Latitude)
但它總是返回一個整數,儘管它有一個緯度值。
有幫助嗎?
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)
你是什麼'Latitude'值,它應該返回一個字符串,而不是在'int' – Habib
@Habib它的價值一樣,30.084524379285227,但它總是返回30 –
也就是說奇怪,你可以檢查通過SQL事件探查器針對您的LINQ查詢生成的查詢 – Habib