Я ищу чистый метод настройки вывода сериализатора YamlDotNet.
У меня есть следующий POCO:
public class MyClass{
public string Foo { get;set; }
public Dictionary<string, string> Bar { get;set; }
}
Если я установлю на нем значения, например
var class = new MyClass{ Foo = "bla" };
class.Bar["key1"] = "val1";
class.Bar["key2"] = "val2";
и сериализовать это, тогда я получу результаты:
Foo: bla
Bar:
key1: val1
key2: val2
Однако то, что мне нужно получить, это
Foo: bla
key1: val1
key2: val2
Я не могу добавить key1, key2 и т. д. в качестве свойств MyClass, поскольку они неизвестны до времени выполнения (как значение, так и количество ключей). Есть ли способ сделать это с помощью YamlDotNet?
Я рассматривал возможность использования отражения для преобразования всего в MyClass в Dictionary<string, object>
, но предпочел бы более чистую реализацию.
Есть ли способ, которым я могу контролировать сериализацию до такой степени?
key1: val1
? - person lokusking   schedule 29.06.2016