2017-02-14 142 views
0

我需要通過將字符串轉換爲decimal.Below來將$(美元),(逗號)和。(句號)全部放入數據庫。但與我目前的代碼它插入如下給出允許在數據庫中使用特殊字符插入c#

     decimal d = Convert.ToDecimal(value); 
         drNew[i] = d; 
         i++; 
+0

你是什麼意思?你可以只使用一個varchar數據類型並將其作爲字符串插入 – CodingYoshi

+0

所以你有問題轉換爲十進制?因爲你的問題是陳述別的。 – CodingYoshi

+0

這不是一個「問題」。貨幣值通常保存爲數字。 – Zesty

回答

0

你可以用它來從一個字符串用貨幣符號轉換爲十進制:

var num = decimal.Parse("$25,529.98", NumberStyles.Currency); 

您可能還如果您需要/想要傳遞文化:

var cultureInfo = new System.Globalization.CultureInfo("en-US"); 
var num = decimal.Parse("$25,529.98", NumberStyles.Currency, cultureInfo); 
0

您的方法是倒退,不建議。有一個hidden field存儲數字值和以貨幣格式顯示格式化字符串的標籤。然後保存數值。

0

試試這個,

int number = 1234567890; 
Convert.ToDecimal(number).ToString("#,##0.00"); 

你會得到的結果1,234,567,890.00.

+0

add convert.tostring()or convert.toint64() –

+0

number.ToString(「N」);試試這一個 –

+0

decimal numericValue = 3494309432324.00m; string formatted = numericValue.ToString(「#,## 0.00」); –

相關問題