Проблема с операциями над System.string, не могу парсить в double строку "2.456"

Есть ПО типа FastReports и в нем есть поддержка C#. Возникла проблема с одним отчетом (предыдущие 5 были сделаны без проблем), а именно с операциями над значением столбца из БД. Есть примеры написания скриптов для обработки данных для полей (картинка). введите сюда описание изображения

Есть поле со значениями value = "3.567" и якобы тип у него System.String, но операции типа [Double.Parse(value)], [Convert.ToDouble(value)] - вызывают ошибку "Ошибка в выражении". Нормально только [(string)value] но выводит тоже самое естественно. Задача: надо конвертировать данную переменную и округлить ее. Предыдущие отчеты не вызывали ошибок и [Convert.ToDouble(value)] или [(double)value] - легко конвертировали строку в double. Еще момент. Для каждого отчета есть конфигуратор под блок кода (картинка). В данном отчете, этот блок пуст. введите сюда описание изображения

Что я делаю не так?


Ответы (2 шт):

Автор решения: rotabor

Там что-то намучено с десятичными разделителями. В "конфигуратор под блок кода" есть пример того, как делается конвертация с тем десятичным разделителем, который обнаружен в строке. Скопируйте себе метод FrmPr и используйте его.

→ Ссылка
Автор решения: Андрей Бондаренко

Спасибо. Нашли решение. Нашли похожие данные с примененной функцией из блока кода. Функция ниже:

 double ToDblDef(string s, double d)
 {
   double dd;
   if (Double.TryParse(s, System.Globalization.NumberStyles.Number, FrmPr(s), out dd)) 
      return dd;
   return d;
 }
→ Ссылка