我正在使用Sharepoint 2007中的工作流程。在工作流程中,我訪問InforPath窗體後臺代碼並向Sharepoint列表中添加一些循環值。Decimal.Parse/Double.Parse返回一個沒有小數點的值
string strProfitMargin = ProfitMargin;
decimal margin1 = decimal.Parse(strProfitMargin);
listItem["Test9"] = Math.Round(margin1, 2).ToString();
假設爲ProfitMargin我得到一個值"0.4230769230769231"
。
Decimal.Parse
方法返回4230769230769231
沒有小數點。最終Math.Round也不起作用。這在我的機器中完美工作。但是在QA服務器中它不起作用。請幫我解釋爲什麼decimal.Parse方法不工作?相同的方式爲double.Parse()返回一個沒有小數的值。
在此先感謝!
'decimal.Parse(「0.4230769230769231」)''返回'0.4230769230769231'對我來說。這是什麼文化? – Oded
我們的服務器在德國。我認爲它應該是「德DE」。是這個原因.Thanx。 – SPKan
是的,很有可能。該文化使用','作爲小數分隔符。使用'CultureInfo.InvariantCulture'解析或使用使用','而不是'''的'的十進制文字。 – Oded