Ошибка при преобразовании десятичного числа из текстового поля

Когда я читаю из файла XML, я читаю это так, и это работает,

decimal checkkkk = Config.Location.test.Longitude;
textBox3.Text = checkkkk.ToString(CultureInfo.InvariantCulture);

Я хочу записать его обратно в тот же XML-файл, на этом этапе я получаю сообщение об ошибке!

decimal value;
Configs.Location.test.Longitude = 
decimal.TryParse(textBox3.Text, NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat, out value);

В чем ошибка?

1 ответ

Решение

Метод Decimal.TryParse возвращает логический тип данных, а не десятичный.

Decimal.TryParse, Преобразует строковое представление числа в его десятичный эквивалент, используя указанный стиль и формат, зависящий от культуры. Возвращаемое значение указывает, успешно ли выполнено преобразование.

Попробуйте сделать это так:

decimal value;
if (decimal.TryParse(textBox3.Text, NumberStyles.Any, CultureInfo.InvariantCulture.NumberFormat, out value)) 
{
     rseConfigs.RseLocation.GpsCoordinates.Longitude = value;
}
Другие вопросы по тегам