private static string RoundToDecimalPoints(string param, int places = 7)
if (string.IsNullOrWhiteSpace(param))
if (!double.TryParse(param, out double number))
return (number * Math.Pow(10, places) == Math.Floor(number * Math.Pow(10, places)))
: number.ToString($"F{places}");
public static void Main()
foreach (var testString in new[] { "notAString", null, string.Empty, "5", "7.1", "07.12", "7.123456", "00.1234567890", "0.0000001" })
Console.WriteLine($"value={testString} | RoundToDecimalPoints(value)={RoundToDecimalPoints(testString)}");