char
сериализуется как число (int) как XmlSerializer
. Поскольку кажется, что вы пытаетесь создать XML с нуля, попробуйте установить для XML значение <unitType>76</unitType>
(значение 76 для L
).
Я тестировал, используя следующий код в LinqPad:
void Main()
{
var m = new MyClass();
m.UnitType = 'L';
var serializer = new System.Xml.Serialization.XmlSerializer(typeof(MyClass));
using(var sr = new StringWriter())
{
serializer.Serialize(sr, m);
Console.WriteLine(sr.GetStringBuilder().ToString());
}
}
public class MyClass
{
public char UnitType { get; set; }
}
Вывод:
<?xml version="1.0" encoding="utf-16"?>
<MyClass xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<UnitType>76</UnitType>
</MyClass>