You didn't tell us what is your CultureInfo
but anyway..
Let's assume your NumberFormatInfo.NumberDecimalSeparator
is ,
instead of .
Your string 123,22
works well like;
string s = "123,23";
decimal d = Convert.ToDecimal(s, CultureInfo.CurrentCulture); //123,23
If your string is 123.22
, then you can use String.Replace
method for replacing ,
instead of .
like;
string s = "123.23";
if(s.Contains('.'))
s = s.Replace('.', ',');
decimal d = Convert.ToDecimal(s, CultureInfo.CurrentCulture); //123,23