Моему приложению внезапно не удалось преобразовать строковое значение формата "18.000"
в десятичное или целое число с ошибкой
System.FormatException: входная строка была в неправильном формате.
При попытке либо
decimal.Parse(stringValue);
int.Parse(stringValue);
Даже если пару дней назад это работало нормально.Он также работал на моем локальном компьютере, но не на сервере публикации.
Оказалось, что я мог бы решить эту проблему, передав CultureInfo.InvariantCulture
следующим образом:
decimal.Parse(aod.PnPQuantity, CultureInfo.InvariantCulture)
Но когда я проверяюНастройки локализации сервера, он определенно использует .
в качестве десятичного разделителя:
Мой вопрос, как это возможно?Есть ли какие-то другие настройки, которые мне нужно проверить, и это что-то, что могло измениться само по себе, или кто-то испортил мои настройки?
Будет ли проходить InvariantCulture
, так как я предотвращаю это вбудущее, или мне нужно принять дополнительные меры предосторожности?