我試圖將一個asp.net文本框設置爲SQL 2005 money數據類型字段,顯示給用戶的初始結果是40.0000而不是40.00。 在我的asp.net文本框控件中,我想只顯示小數點後面的前兩個數字,例如40.00在ASP.Net中顯示/格式SQL 2005錢數據類型的最佳方法
什麼是最好的方法來做到這一點? 我的代碼如下:
this.txtPayment.Text = dr["Payment"].ToString();
我試圖將一個asp.net文本框設置爲SQL 2005 money數據類型字段,顯示給用戶的初始結果是40.0000而不是40.00。 在我的asp.net文本框控件中,我想只顯示小數點後面的前兩個數字,例如40.00在ASP.Net中顯示/格式SQL 2005錢數據類型的最佳方法
什麼是最好的方法來做到這一點? 我的代碼如下:
this.txtPayment.Text = dr["Payment"].ToString();
this.txtPayment.Text = string.Format("{0:c}", dr[Payment"].ToString());
使用的ToString方法以 「C」 格式化爲貨幣。
this.txtPayment.Text = dr["Payment"].ToString("c");
,那麼 「C」 格式字符串在ASP.NET的工作方式相同,因爲它在,也就是說,Windows窗體?因爲在WinForms中,我相當肯定它服從客戶端的貨幣設置。因此,即使價值以美元存儲,如果客戶端PC設置爲顯示日元,那麼這就是將要顯示的貨幣符號。這可能不是你想要的。
txtPayment.Text = dr["Payment"].ToString("00.00")
@馬特漢密爾頓
它的作用:
,如果這對使用情況下,它可能是明智的。 「c」適用於CurrentCultureInfo的任何內容,問題在於Web應用程序的所有用戶是否與服務器具有相同的貨幣,否則,他們需要獲取cultureinfo客戶端並使用從那裏收集的貨幣。
經過一番研究,我想出了以下內容:
string pmt = dr["Payment"].ToString();
double dblPmt = System.Convert.ToDouble(pmt);
this.txtPayment.Text = dblPmt.ToString("c",CultureInfo.CurrentCulture.NumberFormat);
我要測試給出的所有代碼示例。如果我可以用一行代碼解決這個問題,那就是我要做的事情。