Decimal Round() in C#

public static string roundNum(double num, int place)
        {
            string formatNum = num.ToString(System.Globalization.CultureInfo.InvariantCulture);
            if (formatNum.Contains("."))
            {
                string[] strSeparator = new string[] { "." };
                string[] strFormatNum = formatNum.Split(strSeparator, StringSplitOptions.None);
                string decimalPlaces = string.Empty;
                if (strFormatNum.Length > 0)
                {
                    int i = 0;
                    foreach (char c in strFormatNum[1])
                    {
                        if (i == 2)
                        {
                            break;
                        }
                        decimalPlaces += c;
                        i += 1;
                    }
                    if (decimalPlaces == string.Empty)
                    {
                        decimalPlaces = "00";
                    }
                    else if (decimalPlaces.Length == 1)
                    {
                        decimalPlaces += "0";
                    }
                    formatNum = strFormatNum[0] + "." + decimalPlaces;
                }
                //num = Convert.ToDouble(Convert.ToDecimal(formatNum));
            }
            formatNum = Convert.ToString(Convert.ToDouble(formatNum, System.Globalization.CultureInfo.InvariantCulture));
            return formatNum == "Infinity" ? "0" : formatNum;
        }

Comments

Popular posts from this blog

Performance Optimization in Sitecore

Strategies for Migrating to Sitecore from legacy or upgrading from older Sitecore

Azure Event Grid Sample code