Как я могу это сделать?
Попробовал использовать TypeConverter, но единственное, о чем я мог подумать, - это создать XML для типов, что не совсем его урезало. TypeConverters в сериализации xaml будет экранировать xml и обрабатывать его как обычный текст. Значение преобразователей не намного лучше.
Теперь я перехожу к ISupportInitialize и выкину, если изменения будут сделаны после инициализации, но мне бы понравился неизменный маршрут ...
Пример типа, который я хочу сериализовать:
public struct Foo
{
public string Bar {get;private set;}
public Foo(string bar) : this()
{
Bar = bar;
}
}
и код
var foo = new Foo("lol");
var serializedFoo = XamlWriter.Save(foo);