У меня есть класс как это:
public class Data
{
public string Name { get; set; }
public int Size { get; set; }
public string Value { get; set; }
[NonSerialized] public byte[] Bytes;
}
Когда a List<Data>
поражает метод сериализации ниже, он иногда умирает с
InvalidOperationException "Этот XmlWriter не поддерживает закодированные данные base64".
Как Вы видите, я ничего непосредственно не кодирую, просто с помощью механизма сериализации по умолчанию.
private static XDocument Serialize<T>( T source )
{
var target = new XDocument( );
var s = new XmlSerializer( typeof( T ) );
using( XmlWriter writer = target.CreateWriter( ) )
{
s.Serialize( writer, source );
}
return target;
}
Данные будут иметь Name
свойства, которые являются английскими словами, разделенными символами нижнего подчеркивания. Value
свойство будет подобным кроме с добавленными математическими операторами или числами (они - математические выражения).
Кто-либо знает то, что вызывает его и как я могу исправить его?