Пример #1
0
        /// <summary>
        /// Turns a decimal value into a currency string
        /// </summary>
        /// <param name="currency">The decimal object to act on</param>
        /// <param name="currencyCode">The currency code.</param>
        /// <returns>
        /// A decimal formatted as a string
        /// </returns>
        public static string ToCurrency(this decimal currency, string currencyCode)
        {
            CurrencyInformationModel currencyInfo = StorefrontManager.GetCurrencyInformation(currencyCode);

            NumberFormatInfo info = (NumberFormatInfo)CultureInfo.GetCultureInfo(currencyInfo.CurrencyNumberFormatCulture).NumberFormat.Clone();

            info.CurrencySymbol          = currencyInfo != null ? currencyInfo.Symbol : currencyCode;
            info.CurrencyPositivePattern = currencyInfo.SymbolPosition;
            return(currency.ToString("C", info));
        }
Пример #2
0
        /// <summary>
        /// Turns a decimal value into a currency string
        /// </summary>
        /// <param name="currency">The decimal object to act on</param>
        /// <param name="currencyCode">The currency code.</param>
        /// <returns>
        /// A decimal formatted as a string
        /// </returns>
        public static string ToCurrency(this decimal currency, string currencyCode)
        {
            NumberFormatInfo         info;
            CurrencyInformationModel currencyInfo = StorefrontManager.GetCurrencyInformation(currencyCode);

            if (currencyInfo != null)
            {
                info = (NumberFormatInfo)CultureInfo.GetCultureInfo(currencyInfo.CurrencyNumberFormatCulture).NumberFormat.Clone();
                info.CurrencySymbol          = currencyInfo != null ? currencyInfo.Symbol : currencyCode;
                info.CurrencyPositivePattern = currencyInfo.SymbolPosition;
            }
            else
            {
                info = (NumberFormatInfo)CultureInfo.GetCultureInfo(Sitecore.Context.Language.Name).NumberFormat.Clone();
            }

            return(currency.ToString("C", info));
        }