Я смотрю, кому настроить сериализацию атрибута.Я думал, что это будет просто, но я не смог достичь того, что хотел сделать, так, как я хотел.
Итак, вот простой пример:
Определение класса:
Class MyClass
{
[XmlAttribute("myAttribute")]
public int[] MyProperty { get; set; }
}
Xml Результат, который я хотел бы получить:
<MyClass myAttribute="1 2 3... N" />
Единственное, что мне удалось сделать, - это добавить атрибут [XmlIgnore] и создать другое свойство с некоторым кодом, который выполнял преобразование.
Итак, мой вопрос, есть ли лучший способ, чем создать новое свойство?Может быть, есть какой-нибудь TypeConverter, который вы можете создать, чтобы сериализатор использовал его?
Кроме того, я пытался использовать атрибут Type, но безуспешно.(Всегда получаю исключения).Но из того, что я прочитал, это для уже определенного типа данных.
[XmlAttribute("myAttribute", typeof(MyConverter))]
public int[] MyProperty { get; set; }
Другой интересный способ был бы таким:
[XmlAttribute("myAttribute")]
[XmlConverter(typeof(MyConverter))]
public int[] MyProperty { get; set; }
Спасибо.
Edit Поскольку решение, которое я искал, не было представлено, я, наконец, решил выбрать решение "IXmlSerializable".