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.