2016-11-17 43 views
0

在Web API中有一個Number數據類型字段,我們從Oracle DB檢索並以JSON格式返回。既然是數字類型的它顯示在結果364578.0所以現在使用字符串格式,我們要設法避免小數點像字符串在C#中格式化以處理小數位

serializer.Serialize(writer, string.Format("{0:n0}",reader[i])); 

它確實解決了問題,但它返回的結果省略了小數位,但結果顯示的一樣364578我只是檢查是否有我們可以回到像364578

+0

你爲什麼關心這個'.'反正?爲什麼不直接序列化它? –

+0

@PatrickHofman客戶端API用戶正在請求我們是否可以刪除小數位。格式化有沒有什麼缺點。 – user4912134

+0

在這種情況下,我總是懷疑我是否會解決問題或解決問題。在這種情況下,您可能需要解決它。 –

回答

1

我們在評論中進行了一些討論。由於API不在您的手中,您似乎無法解決問題。這意味着你必須解決它。

從你的問題我明白,另一端期望一個整數,而不是一個小數。好了,好了,讓我們給它一個int則:

serializer.Serialize(writer, Convert.ToInt32(reader[i])); 
1

您可以使用結果的任何可能性的自定義格式

serializer.Serialize(writer, (decimal)reader[i].ToString("0.#"); 
2

嘗試

serializer.Serialize(writer, string.Format("{0:f0}",reader[i])); 

F格式不使用千個分隔符。詳情請查看MSDN