我正在與一個數據庫進行集成,該數據庫返回貨幣(System.Decimal
)和貨幣代碼。貨幣代碼是類似"USD"
,"GBP"
,甚至"FRF"
的字符串。C#格式貨幣給定貨幣代碼(如USD/GBP/FRF)
是否有內置的mscorlib可以幫助我格式化這些貨幣?我首先考慮設置數據庫貨幣代碼和CultureInfo
之間的映射,但我不知道如何處理FRF,因爲如果我使用"fr-FR"
,它將格式化爲歐元而不是法郎。
我們必須支持貨幣符號的完整列表是:
FRF
CHF
NZD
IN2
SAR
SEK
EUR
MXP
DKK
GBP
AUD
IN1
AED
CAD
NOK
INR
USD
PLN
我認爲他們都需要進行定製。數據庫記錄中的貨幣與特定時間點的文化*相關*,而「新CultureInfo(...)`僅代表」現在「。因此,依靠*任何內置文化可能意味着貨幣符號會因Windows Update而無意中更改。這聽起來正確嗎? – tenfour 2011-02-15 17:44:00
@tenfour:取決於你想要在這裏做什麼。如果你想這是可更新的,那麼他們不必定製。如果你想要這個固定的,那麼你可以使用所有的自定義verisons。然而,生成一個NumberFormatInfo非常容易,所以如果你想完全控制,在字典中創建一組定製字符串需要幾個小時的工作,最好... – 2011-02-15 17:57:32