Znajdź liczbę miejsc dziesiętnych w wartości dziesiętnej niezależnie od kultury

Zastanawiam się, czy istnieje zwięzły i dokładny sposób wyciągnięcia liczby miejsc dziesiętnych w wartości dziesiętnej (jako int), która będzie bezpieczna dla różnych informacji o kulturze?

Na przykład:
19,0 powinno zwrócić 1,
27.5999 powinno powrócić 4,
19.12 powinien zwrócić 2,
itp.

Napisałem zapytanie, które podzieliło ciąg znaków na okres, aby znaleźć miejsca dziesiętne:

int priceDecimalPlaces = price.ToString().Split('.').Count() > 1 
                  ? price.ToString().Split('.').ToList().ElementAt(1).Length 
                  : 0;

Ale wydaje mi się, że będzie to działać tylko w regionach, które używają „.” jako separator dziesiętny i dlatego jest bardzo kruchy w różnych systemach.

questionAnswers(15)

yourAnswerToTheQuestion