XmlSerializerWriter
использует XmlConvert.ToString
для преобразования значений.
Соответствующая часть из этого класса это :
return value.ToString("R", NumberFormatInfo.InvariantInfo);
Таким образом, он использует инвариантную культуру, которая выводит строку, соответствующую XML RFC (то есть точка в качестве десятичного разделителя).
Спецификатор формата "R"
задокументирован здесь :
Спецификатор формата туда-обратно ("R") пытается гарантировать, что числовое значение, преобразованное в строку, будет проанализировано обратно в то же числовое значение. Этот формат поддерживается только для типов Single, Double и BigInteger.
Это означает, что другой конец выдаст такой же double
результат при десериализации строкового значения.