Я хотел бы знать, упускаю ли я что-то или нет ... стандартная культура Великобритании.
Double result = 0;
if (Double.TryParse("1,2,3", NumberStyles.Any, CultureInfo.CurrentCulture, out result))
{
Console.WriteLine(result);
}
Ожидаемый результат будет ничем ... «1,2,3» не следует анализировать как двойное. Однако это так. Согласно .NET 2.0 документации MSDN
AllowThousands Указывает, что числовая строка может иметь группу разделители; например, отделение сотен от тысяч. Допустимые символы-разделители групп определяются Свойства NumberGroupSeparator и CurrencyGroupSeparator для NumberFormatInfo и количество цифр в каждой группе определяется свойствами NumberGroupSizes и CurrencyGroupSizes NumberFormatInfo.
Разрешить тысячи включено в NumberStyles.Any. NumberGroupSizes равно 3 для моей культуры. Это просто ошибка в Double.Parse? кажется маловероятным, но я не могу понять, что делаю неправильно ....