Какова наилучшая практика для приведенного ниже сценария?
У нас есть приложение, которое мы хотели бы поддерживать несколькими валютами. Программное обеспечение будет уважать локали пользователей и региональные настройки, чтобы диктовать правильный формат номера, то есть 10 000,00 долларов США или 10.000,00 ₴ и т.д.
Однако мы хотели бы иметь возможность форматировать разные номера на основе идентификатора валюты (возможно, трех буквенного кода ISO4217). Наша идея состоит в том, чтобы хранить таблицу в базе данных с каждой валютой, а затем запрашивать у пользователя выбор символа валюты, который будет использоваться. Затем программа будет форматировать все номера в соответствии с настройкой языка/региона, но будет использовать символ валюты, как определено в нашей программе.
Итак, учитывая следующие значения и валюты
10000 AUD
5989.34 USD
450 EUR
программа выведет
$ 10,000.00
$ 5,989.34
€ 450,00
или с региональным параметром, который формировал числа как #####, ## $, будет результат:
10000,00 $
5989,34 $
450,00 €
Соблюдение форматирования номера языка/региона, но отображающее разные валюты, что лучше всего подходит для этого?
Надеюсь, это имеет смысл.
Используемая технология - С#.NET 2.0.