2009-11-19 56 views
0

我有以下格式的輸入字符串:12.34SQL小數問題

當我把這個行:

db.AddInParameter(insertMessageDetailCommand, "AttachmentSize", System.Data.SqlDbType.Decimal , Convert.ToDecimal(this.messageEnvelope.EnvelopeInfo.AttachmentSize)); 

我得到一個輸入字符串不正確的格式。我正在部署的服務器具有帶「,」分隔符的區分設置。但其他生產服務器可能有「。」分隔符。

如何將此字符串值:12.34傳遞給此函數以使其不會中斷,並且其通用性足以承受您拋出的任何區域設置?

回答

2

當您解析字符串以消除服務器設置中的差異時指定一種文化。您可以使用InvariantCulture,它使用週期作爲小數分隔符:

Convert.ToDecimal(this.messageEnvelope.EnvelopeInfo.AttachmentSize, CultureInfo.InvariantCulture) 
+0

非常感謝,真的清除它.... – 2009-11-19 12:46:29